--- a/fhiiqm/css/db.css Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/css/db.css Thu Sep 12 09:04:56 2013 +0200
@@ -1,297 +1,319 @@
-.pr {display: none;}
-
-#navi {
- margin-top: 0.3em;
- float: left;
- width: 50em;
- font-family:Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size:11px;
- font-style:normal;
- font-weight:normal;
- }
-#navi a:link {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- line-height: 12px;
- font-weight: bold;
- color: #07079E;
- text-decoration: none;}
-
-#navi a:visited {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- line-height: 12px;
- font-weight: normal;
- color: #07079E;
- text-decoration: none;}
-
-#navi a:hover {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- text-decoration: none;
- color: #C50106;}
-
-#navi a:active {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- text-decoration: underline;
- color: #07079E;}
-#renavi {
- margin-top: 0.3em;
- margin-left: 50em;
- margin-right: 0.3em;
- vertical-align: text-top;
-}
-a:link, a:visited {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- line-height: 12px;
- font-weight: bold;
- color: #07079E;
- text-decoration: none;}
-/*
-a:visited {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- line-height: 12px;
- font-weight: normal;
- color: #07079E;
- text-decoration: none;}
-*/
-a:hover {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- text-decoration: none;
- color: #C50106;}
-
-a:active {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- text-decoration: underline;
- color: #07079E;}
-/*
-tr:hover {background-color:#68ACBF ;}
-*/
-td,span {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- font-style: normal;
- font-weight: normal;
- color: #000066;
- vertical-align: top;
- text-align: left;}
-
-th {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- font-style: normal;
- font-weight: bold;
- color: #000066;
- vertical-align: top;
- text-align: left;}
-
-body {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 12px;
- font-style: normal;
- font-weight: normal;
- color: #003366;
- background-color: #FAFAF0;
- border-bottom-width : 0px;
- border-left : 0px;
- border-left-width : 0px;
- border-right-width : 0px;
- border-right : 0px;
- border-spacing : 0px;
- border-top-width : 0px;
- border-top: 0px;
- border-width : 0px;
- margin-bottom : 0px;
- margin-left : 0px;
- margin-right : 0px;
- margin-top : 0px;
- }
-
-input, textarea, select
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 1px solid;
- border-color: #D2D2D2;
- font-size: 11px;
- color: #000000;
- text-decoration: none;
- background-color: #FFFFFF}
-
-input.read
-{ font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 12px;
- color: #000000;
- text-decoration: none;
- background-color: #DAFAFA}
-
-.dispil
-{
- display: inline;
-}
-.red
-{
- color: #FF0000;
-}
-
-.bgmark
-{
- background-color:#FFCC88;
- color: #FFFFFF;
-}
-.selected
-{
- background-color: #A8BBBB
-}
-.green
-{
- color: #008000;
-}
-
-.bigger
-{
- font-size: 1.1em;
- text-align: left;
-}
-.smaller
-{
- font-size: .9em;
-}
-
-.left
-{
- text-align: left;
-}
-.right
-{
- text-align: right;
-}
-.center
-{
- text-align: center;
-}
-.valignb
-{
- vertical-align: bottom;
-}
-.valignm
-{
- vertical-align: middle;
-}
-.valignt
-{
- vertical-align: top;
-}
-.long20
-{
- width: 20em;
-}
-.long30
-{
- width: 30em;
-}
-.long50
-{
- width: 50em;
-}
-
-.button
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 2px solid;
- border-style:outset;
- border-color: #a5adbd;
- text-decoration: none;
- color: #000066;
- background-color: #a5adbd}
-
-.buttonb
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 2px solid;
- border-style:outset;
- border-color: #a5adbd;
- text-decoration: none;
- font-weight: bold;
- color: #000066;
- background-color: #a5adbd}
-
-.buttonr
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 2px solid;
- border-style:outset;
- border-color: #a5adbd;
- text-decoration: none;
- color: #EE1111;
- background-color: #a5adbd}
-
-.float{
- float:left;
- clear:left;
- margin-top:0px;
- margin-left:20px;
- margin-bottom:10px
-}
-
-.float-r
-{
- float:right;
- clear:right;
- margin-top:1px;
- margin-right:20px;
- margin-bottom:10px;
-}
-.float-br
-{
- float:right;
- clear:right;
- margin-top:0px;
- margin-right:30px;
- margin-bottom:10px;
-}
-
-form
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- padding: 0px;
- border: 0px solid;
- height: 0px;
- font-size: 0px;
- color: #000000;
- text-decoration: none;}
-
-h1{
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 16px;
- font-style: normal;
- color: #000066;
- text-transform: uppercase;
- }
-h2{
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 14px;
- font-style: normal;
- color: #000066;
- text-transform: uppercase;
- }
-
-h3{
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 13px;
- font-style: normal;
- color: #000066;
- }
-
-h4,h5,p {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 12px;
- font-style: normal;
- color: #000066;
- }
-
-h6{
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 1px;
- font-style: normal;
- color: #000066;
- }
+.pr {display: none;}
+
+#navi {
+ margin-top: 0.3em;
+ float: left;
+ width: 50em;
+ font-family:Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size:11px;
+ font-style:normal;
+ font-weight:normal;
+ }
+#navi a:link {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ line-height: 12px;
+ font-weight: bold;
+ color: #07079E;
+ text-decoration: none;}
+
+#navi a:visited {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ line-height: 12px;
+ font-weight: normal;
+ color: #07079E;
+ text-decoration: none;}
+
+#navi a:hover {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ text-decoration: none;
+ color: #C50106;}
+
+#navi a:active {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ text-decoration: underline;
+ color: #07079E;}
+#renavi {
+ margin-top: 0.3em;
+ margin-left: 50em;
+ margin-right: 0.3em;
+ vertical-align: text-top;
+}
+a:link, a:visited {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ line-height: 12px;
+ font-weight: bold;
+ color: #07079E;
+ text-decoration: none;}
+/*
+a:visited {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ line-height: 12px;
+ font-weight: normal;
+ color: #07079E;
+ text-decoration: none;}
+*/
+a:hover {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ text-decoration: none;
+ color: #C50106;}
+
+a:active {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ text-decoration: underline;
+ color: #07079E;}
+/*
+tr:hover {background-color:#68ACBF ;}
+*/
+td,span {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ font-style: normal;
+ font-weight: normal;
+ color: #000066;
+ vertical-align: top;
+ text-align: left;}
+
+th {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ font-style: normal;
+ font-weight: bold;
+ color: #000066;
+ vertical-align: top;
+ text-align: left;}
+
+body {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 12px;
+ font-style: normal;
+ font-weight: normal;
+ color: #003366;
+ background-color: #FAFAF0;
+ border-bottom-width : 0px;
+ border-left : 0px;
+ border-left-width : 0px;
+ border-right-width : 0px;
+ border-right : 0px;
+ border-spacing : 0px;
+ border-top-width : 0px;
+ border-top: 0px;
+ border-width : 0px;
+ margin-bottom : 0px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 0px;
+ }
+
+input, textarea, select
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 1px solid;
+ border-color: #D2D2D2;
+ font-size: 11px;
+ color: #000000;
+ text-decoration: none;
+ background-color: #FFFFFF}
+
+input.read
+{ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 12px;
+ color: #000000;
+ text-decoration: none;
+ background-color: #DAFAFA}
+
+.dispil
+{
+ display: inline;
+}
+.red
+{
+ color: #FF0000;
+}
+
+.bgmark
+{
+ background-color:#FFCC88;
+ color: #FFFFFF;
+}
+.bgmarkwe
+{
+ background-color:#FFDFD1;
+}
+.bgmarkg1
+{
+ background-color:#4CA7A7;
+ width: 18px;
+ height: 18px;
+ vertical-align: middle;
+}
+.bgmarkg2
+{
+ background-color:#96E6DA;
+ width: 18px;
+ height: 18px;
+ vertical-align: middle;
+}
+.selected
+{
+ background-color: #A8BBBB
+}
+.green
+{
+ color: #008000;
+}
+
+.bigger
+{
+ font-size: 1.1em;
+ text-align: left;
+}
+.smaller
+{
+ font-size: .9em;
+}
+.bold
+{
+ font-weight: bold;
+}
+
+.left
+{
+ text-align: left;
+}
+.right
+{
+ text-align: right;
+}
+.center
+{
+ text-align: center;
+}
+.valignb
+{
+ vertical-align: bottom;
+}
+.valignm
+{
+ vertical-align: middle;
+}
+.valignt
+{
+ vertical-align: top;
+}
+.long20
+{
+ width: 20em;
+}
+.long30
+{
+ width: 30em;
+}
+.long50
+{
+ width: 50em;
+}
+
+.button
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 2px solid;
+ border-style:outset;
+ border-color: #a5adbd;
+ text-decoration: none;
+ color: #000066;
+ background-color: #a5adbd}
+
+.buttonb
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 2px solid;
+ border-style:outset;
+ border-color: #a5adbd;
+ text-decoration: none;
+ font-weight: bold;
+ color: #000066;
+ background-color: #a5adbd}
+
+.buttonr
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 2px solid;
+ border-style:outset;
+ border-color: #a5adbd;
+ text-decoration: none;
+ color: #EE1111;
+ background-color: #a5adbd}
+
+.float{
+ float:left;
+ clear:left;
+ margin-top:0px;
+ margin-left:20px;
+ margin-bottom:10px
+}
+
+.float-r
+{
+ float:right;
+ clear:right;
+ margin-top:1px;
+ margin-right:20px;
+ margin-bottom:10px;
+}
+.float-br
+{
+ float:right;
+ clear:right;
+ margin-top:0px;
+ margin-right:30px;
+ margin-bottom:10px;
+}
+
+form
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ padding: 0px;
+ border: 0px solid;
+ height: 0px;
+ font-size: 0px;
+ color: #000000;
+ text-decoration: none;}
+
+h1{
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 16px;
+ font-style: normal;
+ color: #000066;
+ text-transform: uppercase;
+ }
+h2{
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 14px;
+ font-style: normal;
+ color: #000066;
+ text-transform: uppercase;
+ }
+
+h3{
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 13px;
+ font-style: normal;
+ color: #000066;
+ }
+
+h4,h5,p {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 12px;
+ font-style: normal;
+ color: #000066;
+ }
+
+h6{
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 1px;
+ font-style: normal;
+ color: #000066;
+ }
--- a/fhiiqm/css/db_print.css Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/css/db_print.css Thu Sep 12 09:04:56 2013 +0200
@@ -1,205 +1,210 @@
-/* class="sc" verhindert Druck ueber Druckmenu*/
-.sc {display: none;}
-
-a:link, a:visited {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- line-height: 12px;
- font-weight: bold;
- color: #07079E;
- text-decoration: none;}
-
-a:hover {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- text-decoration: none;
- color: #C50106;}
-
-a:active {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- text-decoration: underline;
- color: #07079E;}
-
-td,span {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- font-style: normal;
- font-weight: normal;
- color: #000066;
- vertical-align: top;
- text-align: left;}
-
-th {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 11px;
- font-style: normal;
- font-weight: bold;
- color: #000066;
- vertical-align: top;
- text-align: left;}
-
-body {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 12px;
- font-style: normal;
- font-weight: normal;
- color: #003366;
- background-color: #FFFFFF;
- border-bottom-width : 0px;
- border-left : 0px;
- border-left-width : 0px;
- border-right-width : 0px;
- border-right : 0px;
- border-spacing : 0px;
- border-top-width : 0px;
- border-top: 0px;
- border-width : 0px;
- margin-bottom : 0px;
- margin-left : 0px;
- margin-right : 0px;
- margin-top : 0px;
- }
-
-input, textarea, select
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 1px solid;
- border-color: #D2D2D2;
- font-size: 11px;
- color: #000000;
- text-decoration: none;
- background-color: #ffffff}
-
-input.read
-{ font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 12px;
- color: #000000;
- text-decoration: none;
- background-color: #DAFAFA}
-
-.red
-{
- color: #FF0000;
-}
-
-.green
-{
- color: #008000;
-}
-
-.bigger
-{
- font-size: 1.1em;
- text-align: left;
-}
-.smaller
-{
- font-size: .9em;
-}
-
-.left
-{
- text-align: left;
-}
-.center
-{
- text-align: center;
-}
-.right
-{
- text-align: right;
-}
-.valignb
-{
- vertical-align: bottom;
-}
-.valignt
-{
- vertical-align: top;
-}
-.long20
-{
- width: 20em;
-}
-.long30
-{
- width: 30em;
-}
-.long50
-{
- width: 50em;
-}
-
-.button
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 2px solid;
- border-style:outset;
- border-color: #a5adbd;
- text-decoration: none;
- color: #000066;
- background-color: #a5adbd}
-
-.buttonr
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- border: 2px solid;
- border-style:outset;
- border-color: #a5adbd;
- text-decoration: none;
- color: #EE1111;
- background-color: #a5adbd}
-
-.float{
- float:left;
- clear:left;
- margin-top:0px;
- margin-left:20px;
- margin-bottom:10px
-}
-
-.float-r
-{
- float:right;
- clear:right;
- margin-top:0px;
- margin-right:20px;
- margin-bottom:10px;
-}
-.float-br
-{
- float:right;
- clear:right;
- margin-top:0px;
- margin-right:30px;
- margin-bottom:10px;
-}
-
-form
-{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- padding: 0px;
- border: 0px solid;
- height: 0px;
- font-size: 0px;
- color: #000000;
- text-decoration: none;}
-
-h1,h2{
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 14px;
- font-style: normal;
- color: #000066;
- text-transform: uppercase
- }
-
-h3{
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 13px;
- font-style: normal;
- color: #000066;
- }
-
-h4,h5,p {
- font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
- font-size: 12px;
- font-style: normal;
- color: #000066;
+/* class="sc" verhindert Druck ueber Druckmenu*/
+.sc {display: none;}
+
+a:link, a:visited {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ line-height: 12px;
+ font-weight: bold;
+ color: #07079E;
+ text-decoration: none;}
+
+a:hover {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ text-decoration: none;
+ color: #C50106;}
+
+a:active {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ text-decoration: underline;
+ color: #07079E;}
+
+td,span {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ font-style: normal;
+ font-weight: normal;
+ color: #000066;
+ vertical-align: top;
+ text-align: left;}
+
+th {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 11px;
+ font-style: normal;
+ font-weight: bold;
+ color: #000066;
+ vertical-align: top;
+ text-align: left;}
+
+body {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 12px;
+ font-style: normal;
+ font-weight: normal;
+ color: #003366;
+ background-color: #FFFFFF;
+ border-bottom-width : 0px;
+ border-left : 0px;
+ border-left-width : 0px;
+ border-right-width : 0px;
+ border-right : 0px;
+ border-spacing : 0px;
+ border-top-width : 0px;
+ border-top: 0px;
+ border-width : 0px;
+ margin-bottom : 0px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 0px;
+ }
+
+input, textarea, select
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 1px solid;
+ border-color: #D2D2D2;
+ font-size: 11px;
+ color: #000000;
+ text-decoration: none;
+ background-color: #ffffff}
+
+input.read
+{ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 12px;
+ color: #000000;
+ text-decoration: none;
+ background-color: #DAFAFA}
+
+.red
+{
+ color: #FF0000;
+}
+
+.green
+{
+ color: #008000;
+}
+
+.bigger
+{
+ font-size: 1.1em;
+ text-align: left;
+}
+.smaller
+{
+ font-size: .9em;
+}
+
+.bold
+{
+ font-weight: bold;
+}
+
+.left
+{
+ text-align: left;
+}
+.center
+{
+ text-align: center;
+}
+.right
+{
+ text-align: right;
+}
+.valignb
+{
+ vertical-align: bottom;
+}
+.valignt
+{
+ vertical-align: top;
+}
+.long20
+{
+ width: 20em;
+}
+.long30
+{
+ width: 30em;
+}
+.long50
+{
+ width: 50em;
+}
+
+.button
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 2px solid;
+ border-style:outset;
+ border-color: #a5adbd;
+ text-decoration: none;
+ color: #000066;
+ background-color: #a5adbd}
+
+.buttonr
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ border: 2px solid;
+ border-style:outset;
+ border-color: #a5adbd;
+ text-decoration: none;
+ color: #EE1111;
+ background-color: #a5adbd}
+
+.float{
+ float:left;
+ clear:left;
+ margin-top:0px;
+ margin-left:20px;
+ margin-bottom:10px
+}
+
+.float-r
+{
+ float:right;
+ clear:right;
+ margin-top:0px;
+ margin-right:20px;
+ margin-bottom:10px;
+}
+.float-br
+{
+ float:right;
+ clear:right;
+ margin-top:0px;
+ margin-right:30px;
+ margin-bottom:10px;
+}
+
+form
+{ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ padding: 0px;
+ border: 0px solid;
+ height: 0px;
+ font-size: 0px;
+ color: #000000;
+ text-decoration: none;}
+
+h1,h2{
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 14px;
+ font-style: normal;
+ color: #000066;
+ text-transform: uppercase
+ }
+
+h3{
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 13px;
+ font-style: normal;
+ color: #000066;
+ }
+
+h4,h5,p {
+ font-family: Verdana, Arial, Helvetica, Geneva, sans-serif;
+ font-size: 12px;
+ font-style: normal;
+ color: #000066;
}
\ No newline at end of file
--- a/fhiiqm/form/info_betrst_form.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/info_betrst_form.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,389 +1,401 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 07/2012
- *
- * Form Info Betriebsstoerung
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $okn = true;
-
-?>
-<div align="center">
-<h5>* - Felder sind erforderlich!</h5>
-</div>
-<!-- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_svc"> -->
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_info" target="_self">
-<div align="center">
-<table width="70%" border="0" cellspacing="3" cellpadding="3">
- <tr>
- <td>Titel *<br/><br />
- max. 300 Zeichen möglich</td>
- <td><textarea name="inf[iname]" id="titel" cols="50" rows="2"><?php echo $inf['iname']; ?></textarea>
- <?php
- if (isset($inf['iname']) && $inf['iname']<'!')
- {
- echo "<br><span class=\"red\">Titel ist erforderlich!</span>\n";
- $okn = false;
- }
- if ($infid)
- {
- echo " Info-ID";
- echo " <input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' />";
- }
- ?>
- </td>
- </tr>
- <tr>
- <td>Kurzinformation<br/><br />
- max. 8000 Zeichen möglich
- </td>
- <td><textarea name="inf[ilong]" cols="80" rows="6"><?php echo $inf['ilong']; ?></textarea>
- </td>
- </tr>
- <?php if (substr($ityp,0,1) != 8)
- {
- if ($ityp == 71) $inf['sort'] = "BSI_7_" . substr($inf['sort'],6);
- ?>
- <tr>
- <td>Kennzeichen(Sort.)</td>
- <td><input name="inf[sort]" type="text" size="10" maxlength="10" value="<?php echo $inf['sort']; ?>" />
- <?php if ($ityp==7) echo " BSI_... "; ?></td>
- </tr>
- <?php
- } ?>
- <tr><td>gehört zu Info</td>
- <td><select name="inf[infrel]">
- <?php
- if ($inf['infid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- if (isset($inf["infid"]) && $inf["infid"]>0) $where = " WHERE info_ID != " . $inf["infid"]; else $where="";
- $sql = "SELECT info_ID, LEFT(info_name_s,50) AS iname FROM Info $where ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->info_ID == $inf['infrel'])
- echo "<option selected value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
- else
- echo "<option value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Info-Typ</td>
- <td><select name="inf[ityp]">
- <?php
- if (!$ityp)
- {
- $wher = "";
- if ($inf['ityp'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- }
- else $wher = " WHERE infotyp_ID = $ityp";
- $sql = "SELECT infotyp_ID, infotyp_bez FROM Info_Typ $wher ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->infotyp_ID == $inf['ityp'])
- echo "<option selected value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
- else
- echo "<option value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr><td>Ort</td>
- <td valign="top">Haus
- <select name="inf[geb]" onchange="this.form.submit();">
- <?php
- if ($inf['geb'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->geb_ID == $inf['geb'])
- echo "<option selected value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
- else
- echo "<option value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
- }
- }
- ?>
- </select>
- Raum
- <select name="inf[raum]">
- <?php
- if (!$inf['geb']) $wher = ""; else $wher = " WHERE geb_ID = '".$inf['geb']."'";
- if ($inf['raum'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT raum_ID, raum_nr, raum_name, geb_ID FROM `fhiiqm`.`Raum` $wher ORDER BY 4,2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->raum_ID == $inf['raum'])
- echo "<option selected value=\"$row->raum_ID\">$row->geb_ID: $row->raum_nr $row->raum_name</option>\n";
- else
- echo "<option value=\"$row->raum_ID\">$row->geb_ID: $row->raum_nr $row->raum_name</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Erstellungsdatum *</td>
- <?php if (!$sub && !$del && !$dup && !$infid) $inf['cdat'] = date('Y-m-d');
- ?>
- <td><input class="long10" name="inf[cdat]" id="cdat" value="<?php echo $inf['cdat']; ?>" />
- <?php
- if (isset($inf['cdat']) && $inf['cdat']< "!")
- {
- echo "<br><span class=\"red\">Erstellungsdatum ist erforderlich!</span>\n";
- $okn = false;
- }
- ?>
- </td>
- </tr>
- <tr>
- <td>gültig ab</td>
- <td><input class="long10" name="inf[vdat]" id="vdat" value="<?php echo $inf['vdat']; ?>" /></td>
- </tr>
- <tr>
- <td>gültig bis</td>
- <td><input class="long10" name="inf[bdat]" id="bdat" value="<?php echo $inf['bdat']; ?>" /></td>
- </tr>
- <tr><td>Status Freigabe</td>
- <td><select name="inf[fg]" size="1">
- <?php
- if (!isset($inf["fg"]))
- {
- if ($ityp == 71) $inf["fg"] = 3; else $inf["fg"] = 1;
- }
- if ($inf['fg']) $select = ( "-1" == $inf['fg'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- if ($ityp == 71) $wher = " WHERE info_freigabe_ID=3 "; else $wher="";
- $sql = "SELECT info_freigabe_ID, info_freigabe_bez FROM Info_Freigabe $wher ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($inf['fg']) $select = ( $row->info_freigabe_ID == $inf['fg'] ) ? ' selected' : null;
- echo "<option $select value=\"$row->info_freigabe_ID\">$row->info_freigabe_bez</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Autor</td>
- <td><input class="long20" type="text" name="inf[persknr]" id="persknr" value="<?php echo $inf['persknr']; ?>"/>
- Eingabe von mind. 2 Zeichen -> Namensliste
- </td>
- </tr>
- <tr><td>Sprache</td>
- <td><select name="inf[lang]">
- <?php
- if (!$sub && !$del && !$dup && !$infid) $inf['lang'] = 'de';
- if ($inf['lang'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $alang = array("de"=>"deutsch","en"=>"englisch");
- foreach ($alang as $key=>$value)
- {
- if ($inf['lang'] == $key) $select = " selected "; else $select = "";
- echo "<option $select value=\"$key\">$value</option>\n";
- }
- ?>
- </select></td>
- </tr>
- <tr>
- <td>zugeordnet zu Produkt<br /><br />
- <?php
- if ($ityp != 71)
- echo
- " Mehrfachauswahl möglich:<br />
- [Strg]-Taste + Anklicken der<br />
- gewünschten Listeneinträge";
- ?>
- </td>
- <td>
- <?php
- if ($ityp != 71)
- echo "<select name=\"inf[prid][]\" size=\"9\" multiple=\"multiple\">\n";
- else
- { // Betriebsstörung dezentrale Technik
- echo "<select name=\"inf[prid][]\" size=\"3\">\n";
- $inf['prid'][0] = "4108"; // Branschutz- und Steuerungstechnik
- }
- if (is_array($inf['prid'])) $select = in_array( "-1", $inf['prid'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
-// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
- if (substr($ityp,0,1) == 7) $sql = "CALL prod_hiera_all(4,41)";
- elseif (substr($ityp,0,1) == 8) $sql = "CALL prod_hiera_all(1,15)";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (strlen($row->bez) > 70)
- $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
- else
- $prod=str_replace(" "," ",htmlentities($row->bez));
- if ($row->prid >0) $color=" class='green'"; else $color="";
- if (is_array($inf['prid'])) $select = in_array($row->prid, $inf['prid']) ? ' selected' : null;
- if ($ityp != 71)
- {
- echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
- }
- else
- {
- if ($row->prid == $inf['prid'][0] || $row->prid == 0)
- echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
- }
- }
- }
- unset($result);
- ?>
- </select>
- <br />bitte nur die <font color="green">grünen</font> Einträge wählen
- </td>
- </tr>
- <?php if (substr($ityp,0,1) != 8) // 8 - Betriebsanweisung
- { ?>
- <tr><td>Adressat (Beauftragte)<br />
- <?php
- if ($ityp != 71)
- {
- ?>
- leeres Feld = Löschen</td>
- <td>
- <div id="add">
- <select name="inf[adr][]" size="1">
- <?php
- $select = ( "-1" == $inf['adr'][0] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT fkt_ID, fkt_bez FROM Funktion ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $select = ( $row->fkt_ID == $inf['adr'][0] ) ? ' selected' : null;
- echo "<option $select value=\"$row->fkt_ID\">$row->fkt_ID - $row->fkt_bez</option>\n";
- $sf .= "'".$row->fkt_ID."':'".$row->fkt_bez."',";
- }
- }
- $sf = substr($sf,0,strlen($sgf)-1);
- ?>
- </select>
- <script type="text/javascript">
- <!--
- arr = {<?php echo ($sf); ?>}; // Ergebnis: {'key':'value','key':'value',...}
- //-->
- </script>
-
- <a href="<?php echo "javascript:addInput('add');" ?>" title="weiterer Adressat"><img src="/fhiiqm/img/add.png" /></a>
- <a href="<?php echo "javascript:delInput('add');" ?>" title="löschen letzter Adressat"><img src="/fhiiqm/img/delete.png" /></a><br />
- <?php
- if ($infid || ($sub && isset($inf) && !$ok))
- {
- if (count($inf['adr'])>1)
- {
- $i=0;
- foreach ($inf['adr'] as $fe)
- {
- if ($i>0)
- {
- echo "<select name=\"inf[adr][]\" size=\"1\">";
-
- $select = ( "-1" == $fe ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- foreach ($result as $row)
- {
- $select = ( $row->fkt_ID == $fe ) ? ' selected' : null;
- echo "<option $select value=\"$row->fkt_ID\">$row->fkt_ID - $row->fkt_bez</option>\n";
- }
- echo "</select><br/>\n";
- }
- $i++;
- }
- }
- }
- ?>
- </div>
- </td>
- <?php
- }
- else
- {
- echo "</td>";
- echo "<td><select name='inf[adr][]' size='1'>";
- echo "<option selected value='LV'>LV - Laborverantwortlicher</option></select></td>";
- }
- ?>
- </tr>
- <?php
- }
- if ($ityp == 81) // Betriebsanweisung Anlage
- {
- echo "<tr>
- <td>gehört zu Anlage</td>";
- echo " <td>
- <select name=\"inf[anl]\" size=\"1\">";
- $sql = "SELECT al_ID,al_bez,al_kat_bez FROM fhiiqm.Anlage a
- LEFT JOIN A_Kategorie k ON a.al_kat_ID=k.al_kat_ID WHERE a.al_kat_ID < 6";
- $select = ( "-1" == $inf['adr'][0] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $select = ( $row->al_ID == $inf['anl']) ? ' selected' : null;
- echo "<option $select value=\"$row->al_ID\">$row->al_bez ($row->al_kat_bez)</option>\n";
- }
- }
- echo " </select>
- </td>
- </tr>\n";
- }
- include($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/info_file_form.inc.php");
- ?>
-<!--
- <tr>
- <td>Dateibezeichnung Dokument (*)</td>
- <td><input name="inf[ifname]" type="text" size="50" maxlength="50" value="<?php echo $inf['ifname']; ?>" />
- <?php
-/*
- echo "<br />bitte <u>keine</u> Umlaute im Dateinamen angeben!";
- if (isset($inf['ifname']) && $upd && is_uploaded_file($_FILES["ifile"]["tmp_name"]) && $inf['ifname']<'!')
- {
- echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- {
- if ($inf['ifname']>='!' && file_exists("infos/".$inf['ifname']))
- echo "<br />Dokument anschauen: <a href='infos/" . $inf['ifname'] ."'>" . $inf['ifname'] . "</a>";
-// if ($okn) $okn = true; else $okn=false;
- }
-*/
- ?>
- </td>
- </tr>
--->
- <input type="hidden" name="inf[pers]" id="pid" value="<?php echo $inf['pers']; // Author ?>"/>
- <input type="hidden" name="MAX_FILE_SIZE" value="32000000"/>
- <input type="hidden" name="inf[okn]" value="<?php echo $okn; ?>"/>
-<!-- </table>
- </div>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 07/2012
+ *
+ * Form Info Betriebsstoerung
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $okn = true;
+
+?>
+<div align="center">
+<h5>* - Felder sind erforderlich!</h5>
+</div>
+<!-- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_svc"> -->
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_info" target="_self">
+<div align="center">
+<table width="70%" border="0" cellspacing="3" cellpadding="3">
+ <tr>
+ <td>Titel *<br/><br />
+ max. 300 Zeichen möglich</td>
+ <td><textarea name="inf[iname]" id="titel" cols="50" rows="2"><?php echo $inf['iname']; ?></textarea>
+ <?php
+ if (isset($inf['iname']) && $inf['iname']<'!')
+ {
+ echo "<br><span class=\"red\">Titel ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ if ($infid)
+ {
+ echo " Info-ID";
+ echo " <input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' />";
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>Kurzinformation<br/><br />
+ max. 8000 Zeichen möglich
+ </td>
+ <td><textarea name="inf[ilong]" cols="80" rows="6"><?php echo $inf['ilong']; ?></textarea>
+ </td>
+ </tr>
+ <?php if (substr($ityp,0,1) != 8)
+ {
+ if ($ityp == 71) $inf['sort'] = "BSI_7_" . substr($inf['sort'],6);
+ ?>
+ <tr>
+ <td>Kennzeichen(Sort.)</td>
+ <td><input name="inf[sort]" type="text" size="10" maxlength="10" value="<?php echo $inf['sort']; ?>" />
+ <?php if ($ityp==7) echo " BSI_... "; ?></td>
+ </tr>
+ <?php
+ } ?>
+ <tr><td>gehört zu Info</td>
+ <td><select name="inf[infrel]">
+ <?php
+ if ($inf['infid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ if (isset($inf["infid"]) && $inf["infid"]>0) $where = " WHERE info_ID != " . $inf["infid"]; else $where="";
+ $sql = "SELECT info_ID, LEFT(info_name_s,50) AS iname FROM Info $where ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->info_ID == $inf['infrel'])
+ echo "<option selected value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
+ else
+ echo "<option value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Info-Typ</td>
+ <td><select name="inf[ityp]">
+ <?php
+ if (!$ityp)
+ {
+ $wher = "";
+ if ($inf['ityp'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ }
+ else $wher = " WHERE infotyp_ID = $ityp";
+ $sql = "SELECT infotyp_ID, infotyp_bez FROM Info_Typ $wher ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->infotyp_ID == $inf['ityp'])
+ echo "<option selected value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
+ else
+ echo "<option value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr><td>Ort</td>
+ <td valign="top">Haus
+ <select name="inf[geb]" onchange="this.form.submit();">
+ <?php
+ if ($inf['geb'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->geb_ID == $inf['geb'])
+ echo "<option selected value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
+ else
+ echo "<option value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ Raum
+ <select name="inf[raum]">
+ <?php
+ if (!$inf['geb']) $wher = ""; else $wher = " WHERE geb_ID = '".$inf['geb']."'";
+ if ($inf['raum'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT raum_ID, raum_nr, raum_name, geb_ID FROM `fhiiqm`.`Raum` $wher ORDER BY 4,2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->raum_ID == $inf['raum'])
+ echo "<option selected value=\"$row->raum_ID\">$row->geb_ID: $row->raum_nr $row->raum_name</option>\n";
+ else
+ echo "<option value=\"$row->raum_ID\">$row->geb_ID: $row->raum_nr $row->raum_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Erstellungsdatum *</td>
+ <?php if (!$sub && !$del && !$dup && !$infid) $inf['cdat'] = date('Y-m-d');
+ ?>
+ <td><input class="long10" name="inf[cdat]" id="cdat" value="<?php echo $inf['cdat']; ?>" />
+ <?php
+ if (isset($inf['cdat']) && $inf['cdat']< "!")
+ {
+ echo "<br><span class=\"red\">Erstellungsdatum ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>gültig ab</td>
+ <td><input class="long10" name="inf[vdat]" id="vdat" value="<?php echo $inf['vdat']; ?>" /></td>
+ </tr>
+ <tr>
+ <td>gültig bis</td>
+ <td><input class="long10" name="inf[bdat]" id="bdat" value="<?php echo $inf['bdat']; ?>" /></td>
+ </tr>
+ <tr><td>Status Freigabe</td>
+ <td><select name="inf[fg]" size="1">
+ <?php
+ if (!isset($inf["fg"]))
+ {
+ if ($ityp == 71) $inf["fg"] = 3; else $inf["fg"] = 1;
+ }
+ if ($inf['fg']) $select = ( "-1" == $inf['fg'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ if ($ityp == 71) $wher = " WHERE info_freigabe_ID=3 "; else $wher="";
+ $sql = "SELECT info_freigabe_ID, info_freigabe_bez FROM Info_Freigabe $wher ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($inf['fg']) $select = ( $row->info_freigabe_ID == $inf['fg'] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->info_freigabe_ID\">$row->info_freigabe_bez</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Autor</td>
+ <td><input class="long20" type="text" name="inf[persknr]" id="persknr" value="<?php echo $inf['persknr']; ?>"/>
+ Eingabe von mind. 2 Zeichen -> Namensliste
+ </td>
+ </tr>
+ <tr><td>Sprache</td>
+ <td><select name="inf[lang]">
+ <?php
+ if (!$sub && !$del && !$dup && !$infid) $inf['lang'] = 'de';
+ if ($inf['lang'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $alang = array("de"=>"deutsch","en"=>"englisch");
+ foreach ($alang as $key=>$value)
+ {
+ if ($inf['lang'] == $key) $select = " selected "; else $select = "";
+ echo "<option $select value=\"$key\">$value</option>\n";
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr>
+ <td>zugeordnet zu Produkt<br /><br />
+ <?php
+ if ($ityp != 71)
+ echo
+ " Mehrfachauswahl möglich:<br />
+ [Strg]-Taste + Anklicken der<br />
+ gewünschten Listeneinträge";
+ ?>
+ </td>
+ <td>
+ <?php
+ if ($ityp != 71)
+ echo "<select name=\"inf[prid][]\" size=\"9\" multiple=\"multiple\">\n";
+ else
+ { // Betriebsstörung dezentrale Technik
+ echo "<select name=\"inf[prid][]\" size=\"3\">\n";
+ $inf['prid'][0] = "4108"; // Branschutz- und Steuerungstechnik
+ }
+ if (is_array($inf['prid'])) $select = in_array( "-1", $inf['prid'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
+ if (substr($ityp,0,1) == 7) $sql = "CALL prod_hiera_all(4,41)";
+ elseif (substr($ityp,0,1) == 8) $sql = "CALL prod_hiera_all(1,15)";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (strlen($row->bez) > 70)
+ $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
+ else
+ $prod=str_replace(" "," ",htmlentities($row->bez));
+ if ($row->prid >0) $color=" class='green'"; else $color="";
+ if (is_array($inf['prid'])) $select = in_array($row->prid, $inf['prid']) ? ' selected' : null;
+ if ($ityp != 71)
+ {
+ echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
+ }
+ else
+ {
+ if ($row->prid == $inf['prid'][0] || $row->prid == 0)
+ echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
+ }
+ }
+ }
+ unset($result);
+ ?>
+ </select>
+ <br />bitte nur die <font color="green">grünen</font> Einträge wählen
+ </td>
+ </tr>
+ <?php if (substr($ityp,0,1) != 8) // 8 - Betriebsanweisung
+ { ?>
+ <tr><td>Adressat (Beauftragte)<br />
+ <?php
+ if ($ityp != 71)
+ {
+ ?>
+ leeres Feld = Löschen</td>
+ <td>
+ <div id="add">
+ <select name="inf[adr][]" size="1">
+ <?php
+ $select = ( "-1" == $inf['adr'][0] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT fkt_ID, fkt_bez FROM Funktion ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $select = ( $row->fkt_ID == $inf['adr'][0] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->fkt_ID\">$row->fkt_ID - $row->fkt_bez</option>\n";
+ $sf .= "'".$row->fkt_ID."':'".$row->fkt_bez."',";
+ }
+ }
+ $sf = substr($sf,0,strlen($sgf)-1);
+ ?>
+ </select>
+ <script type="text/javascript">
+ <!--
+ arr = {<?php echo ($sf); ?>}; // Ergebnis: {'key':'value','key':'value',...}
+ //-->
+ </script>
+
+ <a href="<?php echo "javascript:addInput('add');" ?>" title="weiterer Adressat"><img src="/fhiiqm/img/add.png" /></a>
+ <a href="<?php echo "javascript:delInput('add');" ?>" title="löschen letzter Adressat"><img src="/fhiiqm/img/delete.png" /></a><br />
+ <?php
+ if ($infid || ($sub && isset($inf) && !$ok))
+ {
+ if (count($inf['adr'])>1)
+ {
+ $i=0;
+ foreach ($inf['adr'] as $fe)
+ {
+ if ($i>0)
+ {
+ echo "<select name=\"inf[adr][]\" size=\"1\">";
+
+ $select = ( "-1" == $fe ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ foreach ($result as $row)
+ {
+ $select = ( $row->fkt_ID == $fe ) ? ' selected' : null;
+ echo "<option $select value=\"$row->fkt_ID\">$row->fkt_ID - $row->fkt_bez</option>\n";
+ }
+ echo "</select><br/>\n";
+ }
+ $i++;
+ }
+ }
+ }
+ ?>
+ </div>
+ </td>
+ <?php
+ }
+ else
+ {
+ echo "</td>";
+ echo "<td><select name='inf[adr][]' size='1'>";
+ echo "<option selected value='LV'>LV - Laborverantwortlicher</option></select></td>";
+ }
+ ?>
+ </tr>
+ <?php
+ }
+ if ($ityp == 81) // Betriebsanweisung Anlage
+ {
+ echo "<tr>
+ <td>gehört zu Anlage</td>";
+ echo " <td>
+ <select name=\"inf[anl]\" size=\"1\">";
+ $sql = "SELECT al_ID,al_bez,al_kat_bez FROM fhiiqm.Anlage a
+ LEFT JOIN A_Kategorie k ON a.al_kat_ID=k.al_kat_ID WHERE a.al_kat_ID < 6";
+ $select = ( "-1" == $inf['adr'][0] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $select = ( $row->al_ID == $inf['anl']) ? ' selected' : null;
+ echo "<option $select value=\"$row->al_ID\">$row->al_bez ($row->al_kat_bez)</option>\n";
+ }
+ }
+ echo " </select>
+ </td>
+ </tr>\n";
+ }
+ include($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/info_file_form.inc.php");
+ ?>
+<!--
+ <tr>
+ <td>Dateibezeichnung Dokument (*)</td>
+ <td><input name="inf[ifname]" type="text" size="50" maxlength="50" value="<?php echo $inf['ifname']; ?>" />
+ <?php
+/*
+ echo "<br />bitte <u>keine</u> Umlaute im Dateinamen angeben!";
+ if (isset($inf['ifname']) && $upd && is_uploaded_file($_FILES["ifile"]["tmp_name"]) && $inf['ifname']<'!')
+ {
+ echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ {
+ if ($inf['ifname']>='!' && file_exists("infos/".$inf['ifname']))
+ echo "<br />Dokument anschauen: <a href='infos/" . $inf['ifname'] ."'>" . $inf['ifname'] . "</a>";
+// if ($okn) $okn = true; else $okn=false;
+ }
+*/
+ ?>
+ </td>
+ </tr>
+-->
+ <?php
+ if ($inf["tstmp"] && $inf["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($inf["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($inf["uid"]) && $inf["uid"])
+ echo " (".$inf["uid"] .")";
+ echo "</td></tr>\n";
+ ?>
+
+ <input type="hidden" name="inf[pers]" id="pid" value="<?php echo $inf['pers']; // Author ?>"/>
+ <input type="hidden" name="MAX_FILE_SIZE" value="32000000"/>
+ <input type="hidden" name="inf[okn]" value="<?php echo $okn; ?>"/>
+<!-- </table>
+ </div>
</form> -->
\ No newline at end of file
--- a/fhiiqm/form/info_form2.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/info_form2.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,316 +1,328 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 02/2012
- *
- * Form Info allgemein
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $okn = true;
-
-?>
-<div align="center">
-<h5>* - Felder sind erforderlich!</h5>
-</div>
-<!-- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_svc"> -->
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_info" target="_self">
-<div align="center">
-<table width="60%" border="0" cellspacing="3" cellpadding="3">
-<?php
-// if ($inf["ityp"] != 6 && $ityp != 6)
-// {
-?>
- <tr>
- <td>Titel *<br/><br />
- max. 300 Zeichen möglich</td>
- <td><textarea name="inf[iname]" id="titel" cols="50" rows="2"><?php echo $inf['iname']; ?></textarea>
- <?php
- if (isset($inf['iname']) && $inf['iname']<'!')
- {
- echo "<br><span class=\"red\">Titel ist erforderlich!</span>\n";
- $okn = false;
- }
- if ($infid)
- {
- echo " Info-ID";
- echo " <input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' />";
- }
- ?>
- </td>
- </tr>
-<?php
-/* }
- else
- {
- echo "<tr><td>Info-ID</td><td><input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' /></td></tr>\n";
- } */
-?>
- <tr>
- <td>Kurzinformation<br/><br />
- max. 8000 Zeichen möglich<br /><br />
- erforderlich für <br />
- Geschäftsverteilungsplan
- </td>
- <td><textarea name="inf[ilong]" cols="80" rows="6"><?php echo $inf['ilong']; ?></textarea>
- </td>
- </tr>
- <tr>
- <td>Kennzeichen(Sort.)</td>
- <td><input name="inf[sort]" type="text" size="15" maxlength="10" value="<?php echo $inf['sort']; ?>" /></td>
- </tr>
- <tr><td>gehört zu Info</td>
- <td><select name="inf[infrel]">
- <?php
- if ($inf['infid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- if (isset($inf["infid"]) && $inf["infid"]>0) $where = " WHERE info_ID != " . $inf["infid"]; else $where="";
- $sql = "SELECT info_ID, LEFT(info_name_s,50) AS iname FROM Info $where ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->info_ID == $inf['infrel'])
- echo "<option selected value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
- else
- echo "<option value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Info-Typ</td>
- <td><select name="inf[ityp]">
- <?php
- if (!$ityp)
- {
- $wher = "";
- if ($inf['ityp'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- }
- else $wher = " WHERE infotyp_ID = $ityp";
- $sql = "SELECT infotyp_ID, infotyp_bez FROM Info_Typ $wher ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->infotyp_ID == $inf['ityp'])
- echo "<option selected value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
- else
- echo "<option value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Erstellungsdatum *</td>
- <td><input class="long10" name="inf[cdat]" id="cdat" value="<?php echo $inf['cdat']; ?>" />
- <?php
- if (isset($inf['cdat']) && $inf['cdat']< "!")
- {
- echo "<br><span class=\"red\">Erstellungsdatum ist erforderlich!</span>\n";
- $okn = false;
- }
- ?>
- </td>
- </tr>
- <tr>
- <td>gültig ab</td>
- <td><input class="long10" name="inf[vdat]" id="vdat" value="<?php echo $inf['vdat']; ?>" /></td>
- </tr>
- <tr>
- <td>gültig bis</td>
- <td><input class="long10" name="inf[bdat]" id="bdat" value="<?php echo $inf['bdat']; ?>" /></td>
- </tr>
- <tr><td>Status Freigabe</td>
- <td><select name="inf[fg]" size="1">
- <?php
- if (!isset($inf["fg"])) $inf["fg"] = 1;
- if ($inf['fg']) $select = ( "-1" == $inf['fg'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT info_freigabe_ID, info_freigabe_bez FROM Info_Freigabe ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($inf['fg']) $select = ( $row->info_freigabe_ID == $inf['fg'] ) ? ' selected' : null;
- echo "<option $select value=\"$row->info_freigabe_ID\">$row->info_freigabe_bez</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Autor</td>
- <td><input class="long20" type="text" name="inf[persknr]" id="persknr" value="<?php echo $inf['persknr']; ?>"/>
- Eingabe von mind. 2 Zeichen -> Namensliste
- </td>
- </tr>
- <tr>
- <td>Verantwortliche(r) FHI <br /><br />
- Mehrfachauswahl möglich:<br />
- [Strg]-Taste + Anklicken der<br />
- gewünschten Listeneinträge
- </td>
- <td><table cellspacing="0"><tr><td>
- <select name="inf[vpers][]" size="20" multiple="multiple" onblur="this.form.submit();">
- <?php
- $select = null;
- if (is_array($inf['vpers'])) $select = in_array( "-1", $inf['vpers'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
-/* if ((isset($ityp) && $ityp==6) || (isset($inf["ityp"]) && $inf["ityp"]==6))
- { // nur fuer Infotyp 'Geschaeftsverteilungsplan'
- $wherm = " WHERE abt_tel=6 OR persknr IN (122,390,414,418,1339,2450,2452) ";
- }
- else */
- $wherm = " WHERE aktiv < 2 "; // nur MA, keine Objekte, 02.11.2012, bs
- $sql = "SELECT persknr, CONCAT (nachname, ', ',IFNULL(vorname,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as pname FROM fhiiqm.Mitarbeiter $wherm ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (is_array($inf['vpers']))
- {
- $select = in_array( $row->persknr, $inf['vpers'] ) ? ' selected' : null;
- if ($select)
- $inf["vma"][] = $row->persknr."|".$row->pname; // persknr als Index fuer bemerkung zu verantwortlichen-> $inf["prio"][persknr]
- }
- echo "<option $select value=\"$row->persknr\">$row->pname</option>\n";
- }
- }
- ?>
- </select></td>
- <?php
- if (isset($inf["vma"]) && is_array($inf["vma"]))
- {
-// $i=0;
- echo "<td><table cellspacing='0' cellpadding='0'>";
- foreach ($inf["vma"] as $vma)
- {
- list($ind,$ma) = explode("|",$vma);
- echo "<tr><td class='valignb'> $ma: </td>";
-// <td class='valignb'>Priorität <select name=' inf[prio][$i]'>";
- echo "<td class='valignb'> <input name='inf[prio][$ind]' type='text' size='50' maxlength='50' value='". $inf["prio"][$ind] . "' />\n";
-/* for ($j=1; $j<4; $j++)
- {
- $select = ($j == $inf["prio"][$i] ) ? ' selected' : null;
- echo "<option$select value='$j'>$j</option>";
- }
- echo "</select></td></tr>";
-*/
- echo "</td></tr>";
-// $i++;
- }
- echo "</table></td>\n";
- }
- ?>
- </tr></table></td>
- </tr>
- <?php
- if ($inf['ityp'] == 6 && strtolower(substr($inf['sort'],0,2)) == 'bk')
- {
- echo "<tr><td>KST: <i>Obergrenze Bestellwert</i> (€)</td>";
- echo "<td><input name=\"inf[betr]\" type=\"text\" value=\"" . $inf['betr'] . "\" size='15' /></td></tr>\n";
- }
- ?>
- <tr><td>Sprache</td>
- <td><select name="inf[lang]">
- <?php
- if ($inf['lang'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $alang = array("de"=>"deutsch","en"=>"englisch");
- foreach ($alang as $key=>$value)
- {
- if ($inf['lang'] == $key) $select = " selected "; else $select = "";
- echo "<option $select value=\"$key\">$value</option>\n";
- }
- ?>
- </select></td>
- </tr>
- <tr>
- <td>zugeordnet zu Produkt<br /><br />
- Mehrfachauswahl möglich:<br />
- [Strg]-Taste + Anklicken der<br />
- gewünschten Listeneinträge</td>
- <td>
- <select name="inf[prid][]" size="6" multiple="multiple">
- <?php
- if (is_array($inf['prid'])) $select = in_array( "-1", $inf['prid'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
-// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
- $sql = "CALL prod_hiera_all(0,0)";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (strlen($row->bez) > 70)
- $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
- else
- $prod=str_replace(" "," ",htmlentities($row->bez));
- if ($row->prid >0) $color=" class='green'"; else $color="";
- if (is_array($inf['prid'])) $select = in_array($row->prid, $inf['prid']) ? ' selected' : null;
- echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
- }
- }
- unset($result);
- ?>
- </select>
- <br />bitte nur die <font color="green">grünen</font> Einträge wählen
- </td>
- </tr>
- <tr><td>Adressat<br /><br />
- Mehrfachauswahl möglich</td>
- <td><select name="inf[adr][]" size="4" multiple="multiple">
- <?php
- if (is_array($inf['adr'])) $select = in_array( "-1", $inf['adr'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT info_adr_ID, info_adr_name FROM Adressat ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (is_array($inf['adr'])) $select = in_array( $row->info_adr_ID, $inf['adr'] ) ? ' selected' : null;
- echo "<option $select value=\"$row->info_adr_ID\">$row->info_adr_name</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <?php include($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/info_file_form.inc.php"); ?>
-
-<!-- <tr>
- <td>Dateibezeichnung Dokument (*)</td>
- <td><input name="inf[ifname]" type="text" size="50" maxlength="50" value="<?php echo $inf['ifname']; ?>" />
- <?php
-/*
- echo "<br />bitte <u>keine</u> Umlaute im Dateinamen angeben!";
- if (isset($inf['ifname']) && $upd && is_uploaded_file($_FILES["ifile"]["tmp_name"]) && $inf['ifname']<'!')
- {
- echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- {
- if ($inf['ifname']>='!' && file_exists("infos/".$inf['ifname']))
- echo "<br />Dokument anschauen: <a href='infos/" . $inf['ifname'] ."'>" . $inf['ifname'] . "</a>";
- if ($okn) $okn = true; else $okn=false;
- }
-*/
- ?>
- </td>
- </tr>
--->
- <input type="hidden" name="inf[pers]" id="pid" value="<?php echo $inf['pers']; // Author?>"/>
- <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/>
- <input type="hidden" name="inf[okn]" value="<?php echo $okn; ?>"/>
-<!-- </table>
- </div>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 02/2012
+ *
+ * Form Info allgemein
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $okn = true;
+
+?>
+<div align="center">
+<h5>* - Felder sind erforderlich!</h5>
+</div>
+<!-- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_svc"> -->
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_info" target="_self">
+<div align="center">
+<table width="60%" border="0" cellspacing="3" cellpadding="3">
+<?php
+// if ($inf["ityp"] != 6 && $ityp != 6)
+// {
+?>
+ <tr>
+ <td>Titel *<br/><br />
+ max. 300 Zeichen möglich</td>
+ <td><textarea name="inf[iname]" id="titel" cols="50" rows="2"><?php echo $inf['iname']; ?></textarea>
+ <?php
+ if (isset($inf['iname']) && $inf['iname']<'!')
+ {
+ echo "<br><span class=\"red\">Titel ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ if ($infid)
+ {
+ echo " Info-ID";
+ echo " <input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' />";
+ }
+ ?>
+ </td>
+ </tr>
+<?php
+/* }
+ else
+ {
+ echo "<tr><td>Info-ID</td><td><input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' /></td></tr>\n";
+ } */
+?>
+ <tr>
+ <td>Kurzinformation<br/><br />
+ max. 8000 Zeichen möglich<br /><br />
+ erforderlich für <br />
+ Geschäftsverteilungsplan
+ </td>
+ <td><textarea name="inf[ilong]" cols="80" rows="6"><?php echo $inf['ilong']; ?></textarea>
+ </td>
+ </tr>
+ <tr>
+ <td>Kennzeichen(Sort.)</td>
+ <td><input name="inf[sort]" type="text" size="15" maxlength="10" value="<?php echo $inf['sort']; ?>" /></td>
+ </tr>
+ <tr><td>gehört zu Info</td>
+ <td><select name="inf[infrel]">
+ <?php
+ if ($inf['infid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ if (isset($inf["infid"]) && $inf["infid"]>0) $where = " WHERE info_ID != " . $inf["infid"]; else $where="";
+ $sql = "SELECT info_ID, LEFT(info_name_s,50) AS iname FROM Info $where ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->info_ID == $inf['infrel'])
+ echo "<option selected value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
+ else
+ echo "<option value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Info-Typ</td>
+ <td><select name="inf[ityp]">
+ <?php
+ if (!$ityp)
+ {
+ $wher = "";
+ if ($inf['ityp'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ }
+ else $wher = " WHERE infotyp_ID = $ityp";
+ $sql = "SELECT infotyp_ID, infotyp_bez FROM Info_Typ $wher ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->infotyp_ID == $inf['ityp'])
+ echo "<option selected value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
+ else
+ echo "<option value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Erstellungsdatum *</td>
+ <td><input class="long10" name="inf[cdat]" id="cdat" value="<?php echo $inf['cdat']; ?>" />
+ <?php
+ if (isset($inf['cdat']) && $inf['cdat']< "!")
+ {
+ echo "<br><span class=\"red\">Erstellungsdatum ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>gültig ab</td>
+ <td><input class="long10" name="inf[vdat]" id="vdat" value="<?php echo $inf['vdat']; ?>" /></td>
+ </tr>
+ <tr>
+ <td>gültig bis</td>
+ <td><input class="long10" name="inf[bdat]" id="bdat" value="<?php echo $inf['bdat']; ?>" /></td>
+ </tr>
+ <tr><td>Status Freigabe</td>
+ <td><select name="inf[fg]" size="1">
+ <?php
+ if (!isset($inf["fg"])) $inf["fg"] = 1;
+ if ($inf['fg']) $select = ( "-1" == $inf['fg'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT info_freigabe_ID, info_freigabe_bez FROM Info_Freigabe ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($inf['fg']) $select = ( $row->info_freigabe_ID == $inf['fg'] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->info_freigabe_ID\">$row->info_freigabe_bez</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Autor</td>
+ <td><input class="long20" type="text" name="inf[persknr]" id="persknr" value="<?php echo $inf['persknr']; ?>"/>
+ Eingabe von mind. 2 Zeichen -> Namensliste
+ </td>
+ </tr>
+ <tr>
+ <td>Verantwortliche(r) FHI <br /><br />
+ Mehrfachauswahl möglich:<br />
+ [Strg]-Taste + Anklicken der<br />
+ gewünschten Listeneinträge
+ </td>
+ <td><table cellspacing="0"><tr><td>
+ <select name="inf[vpers][]" size="20" multiple="multiple" onblur="this.form.submit();">
+ <?php
+ $select = null;
+ if (is_array($inf['vpers'])) $select = in_array( "-1", $inf['vpers'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+/* if ((isset($ityp) && $ityp==6) || (isset($inf["ityp"]) && $inf["ityp"]==6))
+ { // nur fuer Infotyp 'Geschaeftsverteilungsplan'
+ $wherm = " WHERE abt_tel=6 OR persknr IN (122,390,414,418,1339,2450,2452) ";
+ }
+ else */
+ $wherm = " WHERE aktiv < 2 "; // nur MA, keine Objekte, 02.11.2012, bs
+ $sql = "SELECT persknr, CONCAT (nachname, ', ',IFNULL(vorname,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as pname FROM fhiiqm.Mitarbeiter $wherm ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (is_array($inf['vpers']))
+ {
+ $select = in_array( $row->persknr, $inf['vpers'] ) ? ' selected' : null;
+ if ($select)
+ $inf["vma"][] = $row->persknr."|".$row->pname; // persknr als Index fuer bemerkung zu verantwortlichen-> $inf["prio"][persknr]
+ }
+ echo "<option $select value=\"$row->persknr\">$row->pname</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ <?php
+ if (isset($inf["vma"]) && is_array($inf["vma"]))
+ {
+// $i=0;
+ echo "<td><table cellspacing='0' cellpadding='0'>";
+ foreach ($inf["vma"] as $vma)
+ {
+ list($ind,$ma) = explode("|",$vma);
+ echo "<tr><td class='valignb'> $ma: </td>";
+// <td class='valignb'>Priorität <select name=' inf[prio][$i]'>";
+ echo "<td class='valignb'> <input name='inf[prio][$ind]' type='text' size='50' maxlength='50' value='". $inf["prio"][$ind] . "' />\n";
+/* for ($j=1; $j<4; $j++)
+ {
+ $select = ($j == $inf["prio"][$i] ) ? ' selected' : null;
+ echo "<option$select value='$j'>$j</option>";
+ }
+ echo "</select></td></tr>";
+*/
+ echo "</td></tr>";
+// $i++;
+ }
+ echo "</table></td>\n";
+ }
+ ?>
+ </tr></table></td>
+ </tr>
+ <?php
+ if ($inf['ityp'] == 6 && strtolower(substr($inf['sort'],0,2)) == 'bk')
+ {
+ echo "<tr><td>KST: <i>Obergrenze Bestellwert</i> (€)</td>";
+ echo "<td><input name=\"inf[betr]\" type=\"text\" value=\"" . $inf['betr'] . "\" size='15' /></td></tr>\n";
+ }
+ ?>
+ <tr><td>Sprache</td>
+ <td><select name="inf[lang]">
+ <?php
+ if ($inf['lang'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $alang = array("de"=>"deutsch","en"=>"englisch");
+ foreach ($alang as $key=>$value)
+ {
+ if ($inf['lang'] == $key) $select = " selected "; else $select = "";
+ echo "<option $select value=\"$key\">$value</option>\n";
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr>
+ <td>zugeordnet zu Produkt<br /><br />
+ Mehrfachauswahl möglich:<br />
+ [Strg]-Taste + Anklicken der<br />
+ gewünschten Listeneinträge</td>
+ <td>
+ <select name="inf[prid][]" size="6" multiple="multiple">
+ <?php
+ if (is_array($inf['prid'])) $select = in_array( "-1", $inf['prid'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
+ $sql = "CALL prod_hiera_all(0,0)";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (strlen($row->bez) > 70)
+ $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
+ else
+ $prod=str_replace(" "," ",htmlentities($row->bez));
+ if ($row->prid >0) $color=" class='green'"; else $color="";
+ if (is_array($inf['prid'])) $select = in_array($row->prid, $inf['prid']) ? ' selected' : null;
+ echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
+ }
+ }
+ unset($result);
+ ?>
+ </select>
+ <br />bitte nur die <font color="green">grünen</font> Einträge wählen
+ </td>
+ </tr>
+ <tr><td>Adressat<br /><br />
+ Mehrfachauswahl möglich</td>
+ <td><select name="inf[adr][]" size="4" multiple="multiple">
+ <?php
+ if (is_array($inf['adr'])) $select = in_array( "-1", $inf['adr'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT info_adr_ID, info_adr_name FROM Adressat ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (is_array($inf['adr'])) $select = in_array( $row->info_adr_ID, $inf['adr'] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->info_adr_ID\">$row->info_adr_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <?php include($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/info_file_form.inc.php"); ?>
+
+<!-- <tr>
+ <td>Dateibezeichnung Dokument (*)</td>
+ <td><input name="inf[ifname]" type="text" size="50" maxlength="50" value="<?php echo $inf['ifname']; ?>" />
+ <?php
+/*
+ echo "<br />bitte <u>keine</u> Umlaute im Dateinamen angeben!";
+ if (isset($inf['ifname']) && $upd && is_uploaded_file($_FILES["ifile"]["tmp_name"]) && $inf['ifname']<'!')
+ {
+ echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ {
+ if ($inf['ifname']>='!' && file_exists("infos/".$inf['ifname']))
+ echo "<br />Dokument anschauen: <a href='infos/" . $inf['ifname'] ."'>" . $inf['ifname'] . "</a>";
+ if ($okn) $okn = true; else $okn=false;
+ }
+*/
+ ?>
+ </td>
+ </tr>
+-->
+ <?php
+ if ($inf["tstmp"] && $inf["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($inf["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($inf["uid"]) && $inf["uid"])
+ echo " (".$inf["uid"] .")";
+ echo "</td></tr>\n";
+ ?>
+
+ <input type="hidden" name="inf[pers]" id="pid" value="<?php echo $inf['pers']; // Author?>"/>
+ <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/>
+ <input type="hidden" name="inf[okn]" value="<?php echo $okn; ?>"/>
+<!-- </table>
+ </div>
</form> -->
\ No newline at end of file
--- a/fhiiqm/form/info_form3.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/info_form3.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,282 +1,294 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 04/2012
- *
- * Form Info Geschaeftsverteilungsplan - 3
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $okn = true;
-
-?>
-<div align="center">
-<?php
- if (!is_null($_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"]))
- $text = "";
- else
- if (strpos($_SERVER['PHP_SELF'],"ins") > -1) $text = "Eingabe"; else $text="Ändern / Löschen";
-?>
-<h5>* - Felder sind erforderlich!</h5>
-</div>
-<!-- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_svc"> -->
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_info" target="_self">
-<div align="center">
-<table width="70%" border="0" cellspacing="3" cellpadding="3">
- <tr>
- <td>Titel *<br/><br />
- max. 300 Zeichen möglich</td>
- <td><textarea name="inf[iname]" id="titel" cols="50" rows="2"><?php echo $inf['iname']; ?></textarea>
- <?php
- if (isset($inf['iname']) && $inf['iname']<'!')
- {
- echo "<br><span class=\"red\">Titel ist erforderlich!</span>\n";
- $okn = false;
- }
- if ($infid)
- {
- echo " Info-ID";
- echo " <input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' />";
- }
- ?>
- </td>
- </tr>
- <tr>
- <td>Kurzinformation<br/><br />
- max. 8000 Zeichen möglich<br /><br />
- erforderlich für <br />
- Geschäftsverteilungsplan
- </td>
- <td><textarea name="inf[ilong]" cols="80" rows="6"><?php echo $inf['ilong']; ?></textarea>
- </td>
- </tr>
- <tr>
- <td>Kennzeichen(Sort.)</td>
- <td><input name="inf[sort]" type="text" size="15" maxlength="10" value="<?php echo $inf['sort']; ?>" />
- BK... bei KST</td>
- </tr>
- <tr><td>gehört zu Info</td>
- <td><select name="inf[infrel]">
- <?php
- if ($inf['infid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- if (isset($inf["infid"]) && $inf["infid"]>0) $where = " WHERE info_ID != " . $inf["infid"]; else $where="";
- $sql = "SELECT info_ID, LEFT(info_name_s,50) AS iname FROM Info $where ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->info_ID == $inf['infrel'])
- echo "<option selected value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
- else
- echo "<option value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Info-Typ</td>
- <td><select name="inf[ityp]">
- <?php
- if (!$ityp)
- {
- $wher = "";
- if ($inf['ityp'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- }
- else $wher = " WHERE infotyp_ID = $ityp";
- $sql = "SELECT infotyp_ID, infotyp_bez FROM Info_Typ $wher ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->infotyp_ID == $inf['ityp'])
- echo "<option selected value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
- else
- echo "<option value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Erstellungsdatum *</td>
- <td><input class="long10" name="inf[cdat]" id="cdat" value="<?php echo $inf['cdat']; ?>" />
- <?php
- if (isset($inf['cdat']) && $inf['cdat']< "!")
- {
- echo "<br><span class=\"red\">Erstellungsdatum ist erforderlich!</span>\n";
- $okn = false;
- }
- ?>
- </td>
- </tr>
- <tr>
- <td>gültig ab</td>
- <td><input class="long10" name="inf[vdat]" id="vdat" value="<?php echo $inf['vdat']; ?>" /></td>
- </tr>
- <tr>
- <td>gültig bis</td>
- <td><input class="long10" name="inf[bdat]" id="bdat" value="<?php echo $inf['bdat']; ?>" /></td>
- </tr>
- <tr><td>Status Freigabe</td>
- <td><select name="inf[fg]" size="1">
- <?php
- if (!isset($inf["fg"])) $inf["fg"] = 1;
- if ($inf['fg']) $select = ( "-1" == $inf['fg'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT info_freigabe_ID, info_freigabe_bez FROM Info_Freigabe ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($inf['fg']) $select = ( $row->info_freigabe_ID == $inf['fg'] ) ? ' selected' : null;
- echo "<option $select value=\"$row->info_freigabe_ID\">$row->info_freigabe_bez</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Autor</td>
- <td><input class="long20" type="text" name="inf[persknr]" id="persknr" value="<?php echo $inf['persknr']; ?>"/>
- Eingabe von mind. 2 Zeichen -> Namensliste
- </td>
- </tr>
- <tr>
- <td>Verantwortliche(r) FHI
- <br /><br /> Eingabe von mind. 2 Zeichen
- <br /> -> Namensliste,
- <br /> Wiederholung für weitere Namen
- <br /><br /> Ändern: alles Löschen, neu eingeben
- </td>
- <td><table cellspacing="0"><tr><td>
- <textarea cols="40" rows="5" name="inf[vpers]" id="vpers"><?php echo $inf['vpers']; ?></textarea>
-
- </td>
- <?php
- if (isset($inf["vpn"]) && $inf["vpn"])
- {
-// $plist = substr($inf["vpn"],0,strlen($inf["vpn"])-1);
- if (strpos($inf["vpn"],",") === 0) $inf["vpn"] = substr($inf["vpn"],1);
- echo "<td><table cellspacing='0' cellpadding='0'>";
- $sql = "SELECT persknr, CONCAT (nachname, ', ',vorname) AS ma FROM Mitarbeiter WHERE persknr IN (".$inf["vpn"].") ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- foreach ($result as $row)
- {
- echo "<tr><td class='valignb'> $row->ma: </td>";
- echo "<td class='valignb' width='40%'> <input name='inf[prio][$row->persknr]' type='text' size='50' maxlength='50' value='". $inf["prio"][$row->persknr] . "' />\n";
- echo "</td></tr>";
- }
- echo "</table></td>\n";
- }
- ?>
- </tr></table></td>
- </tr>
- <?php
- if ($inf['ityp'] == 6 && strtolower(substr($inf['sort'],0,2)) == 'bk')
- {
- echo "<tr><td>KST: <i>Obergrenze Bestellwert</i> (€)</td>";
- echo "<td><input name=\"inf[betr]\" type=\"text\" value=\"" . $inf['betr'] . "\" size='15' /></td></tr>\n";
- }
- ?>
- <tr><td>Sprache</td>
- <td><select name="inf[lang]">
- <?php
- if ($inf['lang'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $alang = array("de"=>"deutsch","en"=>"englisch");
- foreach ($alang as $key=>$value)
- {
- if ($inf['lang'] == $key) $select = " selected "; else $select = "";
- echo "<option $select value=\"$key\">$value</option>\n";
- }
- ?>
- </select></td>
- </tr>
- <tr>
- <td>zugeordnet zu Produkt<br /><br />
- Mehrfachauswahl möglich:<br />
- [Strg]-Taste + Anklicken der<br />
- gewünschten Listeneinträge</td>
- <td>
- <select name="inf[prid][]" size="6" multiple="multiple">
- <?php
- if (is_array($inf['prid'])) $select = in_array( "-1", $inf['prid'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
-// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
- $sql = "CALL prod_hiera_all(0,0)";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (strlen($row->bez) > 70)
- $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
- else
- $prod=str_replace(" "," ",htmlentities($row->bez));
- if ($row->prid >0) $color=" class='green'"; else $color="";
- if (is_array($inf['prid'])) $select = in_array($row->prid, $inf['prid']) ? ' selected' : null;
- echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
- }
- }
- unset($result);
- ?>
- </select>
- <br />bitte nur die <font color="green">grünen</font> Einträge wählen
- </td>
- </tr>
- <tr><td>Adressat<br /><br />
- Mehrfachauswahl möglich</td>
- <td><select name="inf[adr][]" size="4" multiple="multiple">
- <?php
- if (is_array($inf['adr'])) $select = in_array( "-1", $inf['adr'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT info_adr_ID, info_adr_name FROM Adressat ORDER BY 2";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (is_array($inf['adr'])) $select = in_array( $row->info_adr_ID, $inf['adr'] ) ? ' selected' : null;
- echo "<option $select value=\"$row->info_adr_ID\">$row->info_adr_name</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <?php include($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/info_file_form.inc.php"); ?>
-<!-- <tr>
- <td>Dateibezeichnung Dokument (*)</td>
- <td><input name="inf[ifname]" type="text" size="50" maxlength="50" value="<?php echo $inf['ifname']; ?>" />
- <?php
-/*
- echo "<br />bitte <u>keine</u> Umlaute im Dateinamen angeben!";
- if (isset($inf['ifname']) && $upd && is_uploaded_file($_FILES["ifile"]["tmp_name"]) && $inf['ifname']<'!')
- {
- echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- {
- if ($inf['ifname']>='!' && file_exists("infos/".$inf['ifname']))
- echo "<br />Dokument anschauen: <a href='infos/" . $inf['ifname'] ."'>" . $inf['ifname'] . "</a>";
- if ($okn) $okn = true; else $okn=false;
- }
-*/
- ?>
- </td>
- </tr>
--->
- <input type="hidden" name="inf[pers]" id="pid" value="<?php echo $inf['pers']; // Author ?>"/>
- <input type="hidden" name="inf[vpn]" id="vpid" value="<?php echo $inf['vpn']; // Verantwortliche ?>"/>
- <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/>
- <input type="hidden" name="inf[okn]" value="<?php echo $okn; ?>"/>
-<!-- </table>
- </div>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 04/2012
+ *
+ * Form Info Geschaeftsverteilungsplan - 3
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $okn = true;
+
+?>
+<div align="center">
+<?php
+ if (!is_null($_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"]))
+ $text = "";
+ else
+ if (strpos($_SERVER['PHP_SELF'],"ins") > -1) $text = "Eingabe"; else $text="Ändern / Löschen";
+?>
+<h5>* - Felder sind erforderlich!</h5>
+</div>
+<!-- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_svc"> -->
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_info" target="_self">
+<div align="center">
+<table width="70%" border="0" cellspacing="3" cellpadding="3">
+ <tr>
+ <td>Titel *<br/><br />
+ max. 300 Zeichen möglich</td>
+ <td><textarea name="inf[iname]" id="titel" cols="50" rows="2"><?php echo $inf['iname']; ?></textarea>
+ <?php
+ if (isset($inf['iname']) && $inf['iname']<'!')
+ {
+ echo "<br><span class=\"red\">Titel ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ if ($infid)
+ {
+ echo " Info-ID";
+ echo " <input class='read right' name='inf[infid]' type='text' size='5' value='" .$inf['infid']."' readonly='readonly' />";
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>Kurzinformation<br/><br />
+ max. 8000 Zeichen möglich<br /><br />
+ erforderlich für <br />
+ Geschäftsverteilungsplan
+ </td>
+ <td><textarea name="inf[ilong]" cols="80" rows="6"><?php echo $inf['ilong']; ?></textarea>
+ </td>
+ </tr>
+ <tr>
+ <td>Kennzeichen(Sort.)</td>
+ <td><input name="inf[sort]" type="text" size="15" maxlength="10" value="<?php echo $inf['sort']; ?>" />
+ BK... bei KST</td>
+ </tr>
+ <tr><td>gehört zu Info</td>
+ <td><select name="inf[infrel]">
+ <?php
+ if ($inf['infid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ if (isset($inf["infid"]) && $inf["infid"]>0) $where = " WHERE info_ID != " . $inf["infid"]; else $where="";
+ $sql = "SELECT info_ID, LEFT(info_name_s,50) AS iname FROM Info $where ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->info_ID == $inf['infrel'])
+ echo "<option selected value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
+ else
+ echo "<option value=\"$row->info_ID\">$row->info_ID - $row->iname</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Info-Typ</td>
+ <td><select name="inf[ityp]">
+ <?php
+ if (!$ityp)
+ {
+ $wher = "";
+ if ($inf['ityp'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ }
+ else $wher = " WHERE infotyp_ID = $ityp";
+ $sql = "SELECT infotyp_ID, infotyp_bez FROM Info_Typ $wher ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->infotyp_ID == $inf['ityp'])
+ echo "<option selected value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
+ else
+ echo "<option value=\"$row->infotyp_ID\">$row->infotyp_bez</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Erstellungsdatum *</td>
+ <td><input class="long10" name="inf[cdat]" id="cdat" value="<?php echo $inf['cdat']; ?>" />
+ <?php
+ if (isset($inf['cdat']) && $inf['cdat']< "!")
+ {
+ echo "<br><span class=\"red\">Erstellungsdatum ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>gültig ab</td>
+ <td><input class="long10" name="inf[vdat]" id="vdat" value="<?php echo $inf['vdat']; ?>" /></td>
+ </tr>
+ <tr>
+ <td>gültig bis</td>
+ <td><input class="long10" name="inf[bdat]" id="bdat" value="<?php echo $inf['bdat']; ?>" /></td>
+ </tr>
+ <tr><td>Status Freigabe</td>
+ <td><select name="inf[fg]" size="1">
+ <?php
+ if (!isset($inf["fg"])) $inf["fg"] = 1;
+ if ($inf['fg']) $select = ( "-1" == $inf['fg'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT info_freigabe_ID, info_freigabe_bez FROM Info_Freigabe ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($inf['fg']) $select = ( $row->info_freigabe_ID == $inf['fg'] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->info_freigabe_ID\">$row->info_freigabe_bez</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Autor</td>
+ <td><input class="long20" type="text" name="inf[persknr]" id="persknr" value="<?php echo $inf['persknr']; ?>"/>
+ Eingabe von mind. 2 Zeichen -> Namensliste
+ </td>
+ </tr>
+ <tr>
+ <td>Verantwortliche(r) FHI
+ <br /><br /> Eingabe von mind. 2 Zeichen
+ <br /> -> Namensliste,
+ <br /> Wiederholung für weitere Namen
+ <br /><br /> Ändern: alles Löschen, neu eingeben
+ </td>
+ <td><table cellspacing="0"><tr><td>
+ <textarea cols="40" rows="5" name="inf[vpers]" id="vpers"><?php echo $inf['vpers']; ?></textarea>
+
+ </td>
+ <?php
+ if (isset($inf["vpn"]) && $inf["vpn"])
+ {
+// $plist = substr($inf["vpn"],0,strlen($inf["vpn"])-1);
+ if (strpos($inf["vpn"],",") === 0) $inf["vpn"] = substr($inf["vpn"],1);
+ echo "<td><table cellspacing='0' cellpadding='0'>";
+ $sql = "SELECT persknr, CONCAT (nachname, ', ',vorname) AS ma FROM Mitarbeiter WHERE persknr IN (".$inf["vpn"].") ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ foreach ($result as $row)
+ {
+ echo "<tr><td class='valignb'> $row->ma: </td>";
+ echo "<td class='valignb' width='40%'> <input name='inf[prio][$row->persknr]' type='text' size='50' maxlength='50' value='". $inf["prio"][$row->persknr] . "' />\n";
+ echo "</td></tr>";
+ }
+ echo "</table></td>\n";
+ }
+ ?>
+ </tr></table></td>
+ </tr>
+ <?php
+ if ($inf['ityp'] == 6 && strtolower(substr($inf['sort'],0,2)) == 'bk')
+ {
+ echo "<tr><td>KST: <i>Obergrenze Bestellwert</i> (€)</td>";
+ echo "<td><input name=\"inf[betr]\" type=\"text\" value=\"" . $inf['betr'] . "\" size='15' /></td></tr>\n";
+ }
+ ?>
+ <tr><td>Sprache</td>
+ <td><select name="inf[lang]">
+ <?php
+ if ($inf['lang'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $alang = array("de"=>"deutsch","en"=>"englisch");
+ foreach ($alang as $key=>$value)
+ {
+ if ($inf['lang'] == $key) $select = " selected "; else $select = "";
+ echo "<option $select value=\"$key\">$value</option>\n";
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr>
+ <td>zugeordnet zu Produkt<br /><br />
+ Mehrfachauswahl möglich:<br />
+ [Strg]-Taste + Anklicken der<br />
+ gewünschten Listeneinträge</td>
+ <td>
+ <select name="inf[prid][]" size="6" multiple="multiple">
+ <?php
+ if (is_array($inf['prid'])) $select = in_array( "-1", $inf['prid'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
+ $sql = "CALL prod_hiera_all(0,0)";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (strlen($row->bez) > 70)
+ $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
+ else
+ $prod=str_replace(" "," ",htmlentities($row->bez));
+ if ($row->prid >0) $color=" class='green'"; else $color="";
+ if (is_array($inf['prid'])) $select = in_array($row->prid, $inf['prid']) ? ' selected' : null;
+ echo "<option $color $select value=\"$row->prid\">$prod</option>\n";
+ }
+ }
+ unset($result);
+ ?>
+ </select>
+ <br />bitte nur die <font color="green">grünen</font> Einträge wählen
+ </td>
+ </tr>
+ <tr><td>Adressat<br /><br />
+ Mehrfachauswahl möglich</td>
+ <td><select name="inf[adr][]" size="4" multiple="multiple">
+ <?php
+ if (is_array($inf['adr'])) $select = in_array( "-1", $inf['adr'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT info_adr_ID, info_adr_name FROM Adressat ORDER BY 2";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (is_array($inf['adr'])) $select = in_array( $row->info_adr_ID, $inf['adr'] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->info_adr_ID\">$row->info_adr_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <?php include($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/info_file_form.inc.php"); ?>
+<!-- <tr>
+ <td>Dateibezeichnung Dokument (*)</td>
+ <td><input name="inf[ifname]" type="text" size="50" maxlength="50" value="<?php echo $inf['ifname']; ?>" />
+ <?php
+/*
+ echo "<br />bitte <u>keine</u> Umlaute im Dateinamen angeben!";
+ if (isset($inf['ifname']) && $upd && is_uploaded_file($_FILES["ifile"]["tmp_name"]) && $inf['ifname']<'!')
+ {
+ echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ {
+ if ($inf['ifname']>='!' && file_exists("infos/".$inf['ifname']))
+ echo "<br />Dokument anschauen: <a href='infos/" . $inf['ifname'] ."'>" . $inf['ifname'] . "</a>";
+ if ($okn) $okn = true; else $okn=false;
+ }
+*/
+ ?>
+ </td>
+ </tr>
+-->
+ <?php
+ if ($inf["tstmp"] && $inf["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($inf["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($inf["uid"]) && $inf["uid"])
+ echo " (".$inf["uid"] .")";
+ echo "</td></tr>\n";
+ ?>
+
+ <input type="hidden" name="inf[pers]" id="pid" value="<?php echo $inf['pers']; // Author ?>"/>
+ <input type="hidden" name="inf[vpn]" id="vpid" value="<?php echo $inf['vpn']; // Verantwortliche ?>"/>
+ <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/>
+ <input type="hidden" name="inf[okn]" value="<?php echo $okn; ?>"/>
+<!-- </table>
+ </div>
</form> -->
\ No newline at end of file
--- a/fhiiqm/form/laser_form.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/laser_form.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,354 +1,357 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 12/2011
- *
- * Form Laser
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $okn = true;
- if (!$la["geb"]) $la["geb"]="A";
-
-?>
-<div align="center">
-<table>
-<tr><td class="bigger">Die Auswahl eines Verantwortlichen geschieht durch Eingeben von<br />mindesten 2 Zeichen in das entsprechende Feld.
-</td></tr>
-<tr><td class="bigger"> </td></tr>
-</table>
-</div>
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="flas">
-<div align="center">
- <table border="0" cellspacing="3" cellpadding="3">
-<!-- <div class="ui-widget"> -->
- <tr>
- <td>
- <? if ($laid)
- {
- echo "Laser-ID</td>";
- echo "<td><input class='read' name='la[lid]' type='text' size='5' value='" .$la['lid']."' readonly='readonly' />";
- echo " ";
- }
- echo "gehört zu Laser ";
- if (!$laid) echo "</td><td>";
- echo "<select name=\"la[lidref]\">";
- if ($la["lidref"] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- if ($laid) $wher = " WHERE las_ID <> $laid "; else $wher = "";
- $sql = "SELECT las_ID, las_bez FROM Laser $wher ORDER BY 2";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($res as $row)
- {
- if ($row->las_ID == $la['lidref']) $select="selected"; else $select="";
- echo "<option $select value='$row->las_ID'>$row->las_ID - $row->las_bez</option>\n";
- }
- }
- ?>
- </td>
- </tr>
- <tr><td>Laserbezeichnung *</td>
- <td valign="top"><input type="text" name="la[lbez]" id="lbez" size="50" maxlength="250" value="<?php echo $la['lbez']; ?>"/>
- <?php
- if (isset($la['lbez']) && $la['lbez']<'!')
- {
- echo "<br><span class=\"red\">Laserbezeichnung ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- if ($okn) $okn = true; else $okn=false;
- ?>
- </td>
- </tr>
- <tr><td>Inventar-Nr.</td>
- <td valign="top"><input type="text" name="la[invnr]" size="20" maxlength="20" value="<?php echo $la['invnr']; ?>"/>
- </td>
- </tr>
- <tr><td>in Betrieb</td>
- <td><input type="checkbox" name="la[akt]" value="1" <?php echo ($la["akt"] )? "checked=\"checked\"" : "";?> />
- </td>
- </tr>
- <tr><td>Wellenlänge(nm) von</td>
- <td valign="top"><input type="text" name="la[wvon]" size="10" maxlength="7" value="<?php echo $la['wvon']; ?>"/>
- Wellenlänge(nm) bis
- <input type="text" name="la[wbis]" size="10" maxlength="7" value="<?php echo $la['wbis']; ?>"/></td>
- </tr>
- <tr><td>Laserart</td>
- <td><select name="la[lart]">
- <?php
- if ($la['lart'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT las_art_ID, las_art_bez FROM Laser_Art ORDER BY 2";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($res as $row)
- {
- if ($row->las_art_ID == $la['lart']) $select="selected"; else $select="";
- echo "<option $select value='$row->las_art_ID'>$row->las_art_bez</option>\n";
- }
- }
- ?>
- </select> oder neu
- <input name="la[lartnew]" type="text" size="30" maxlength="50" value="<?php echo $la['lartnew']; ?>"/> </td>
- </tr>
- <tr><td>Lasertyp</td>
- <td><select name="la[ltyp]">
- <?php
- if ($la['ltyp'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT las_typ_ID, las_typ_bez FROM Laser_Typ ORDER BY 2";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($res as $row)
- {
- if ($row->las_typ_ID == $la['ltyp']) $select="selected"; else $select="";
- echo "<option $select value='$row->las_typ_ID'>$row->las_typ_bez</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Laserklasse</td>
- <td><select name="la[lkla]">
- <?php
- if ($la['lkla'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT las_klasse_ID, las_klasse_bez FROM Laser_Klasse ORDER BY 2";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($res as $row)
- {
- if ($row->las_klasse_ID == $la['lkla']) $select="selected"; else $select="";
- echo "<option $select value='$row->las_klasse_ID'>$row->las_klasse_bez</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Schutzstufe</td>
- <td><select name="la[suid]">
- <?php
- if ($la['suid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT schutzst_ID, schutzst_bez FROM Schutzstufe WHERE LEFT(schutzst_bez,2)<>'OD' ORDER BY 2";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($res as $row)
- {
- if ($row->schutzst_ID == $la['suid']) $select="selected"; else $select="";
- echo "<option $select value='$row->schutzst_ID'>$row->schutzst_bez</option>\n";
- }
- }
- ?>
- </select> Schutzstufe OD
- <select name="la[suodid]">
- <?php
- if ($la['suid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT schutzst_ID, schutzst_bez FROM Schutzstufe WHERE LEFT(schutzst_bez,2)='OD' ORDER BY 2";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($res as $row)
- {
- if ($row->schutzst_ID == $la['suodid']) $select="selected"; else $select="";
- echo "<option $select value='$row->schutzst_ID'>$row->schutzst_bez</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Leistung</td>
- <td valign="top"><input type="text" name="la[leist]" size="10" maxlength="7" value="<?php echo $la['leist']; ?>"/>
- Einheit
- <select name="la[eleist]">
- <?php
- $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=1 ORDER BY sort";
- if ($ree = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($ree as $row)
- {
- if ($row->einheit_ID == $la['eleist']) $select="selected"; else $select="";
- echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>max. Leistung</td>
- <td valign="top"><input type="text" name="la[leistmax]" size="10" maxlength="7" value="<?php echo $la['leistmax']; ?>"/>
- Einheit
- <select name="la[eleistmax]">
- <?php
- $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=1 ORDER BY sort";
- if ($ree = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($ree as $row)
- {
- if ($row->einheit_ID == $la['eleistmax']) $select="selected"; else $select="";
- echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Energie</td>
- <td valign="top"><input type="text" name="la[eng]" size="10" maxlength="7" value="<?php echo $la['eng']; ?>"/>
- Einheit
- <select name="la[eeng]">
- <?php
- $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=2 ORDER BY sort";
- if ($ree = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($ree as $row)
- {
- if ($row->einheit_ID == $la['eeng']) $select="selected"; else $select="";
- echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Apertur</td>
- <td valign="top"><input type="text" name="la[apt]" size="10" maxlength="7" value="<?php echo $la['apt']; ?>"/>
- Einheit
- <select name="la[eapt]">
- <?php
- $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=3 ORDER BY sort";
- if ($ree = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($ree as $row)
- {
- if ($row->einheit_ID == $la['eapt']) $select="selected"; else $select="";
- echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Frequenz</td>
- <td valign="top"><input type="text" name="la[frq]" size="10" maxlength="7" value="<?php echo $la['frq']; ?>"/>
- Einheit
- <select name="la[efrq]">
- <?php
- $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=4 ORDER BY sort";
- if ($ree = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($ree as $row)
- {
- if ($row->einheit_ID == $la['efrq']) $select="selected"; else $select="";
- echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr><td>Impulsbreite</td>
- <td valign="top"><input type="text" name="la[ipb]" size="10" maxlength="7" value="<?php echo $la['ipb']; ?>"/>
- Einheit
- <select name="la[eipb]">
- <?php
- $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=5 ORDER BY sort";
- if ($ree = $dbc -> queryObjectArray($sql))
- {
- $select = "";
- foreach ($ree as $row)
- {
- if ($row->einheit_ID == $la['eipb']) $select="selected"; else $select="";
- echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
- }
- }
- ?>
- </select></td>
- </tr>
- <tr>
- <td>Hersteller (Firma)</td>
- <td>
- <select name="la[hstid]">
- <?php
- if ($la['hstid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT las_hersteller_ID, las_hersteller_bez FROM fhiiqm.Laser_Hersteller ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->las_hersteller_ID == $la['hstid']) $select="selected"; else $select="";
- echo "<option $select value=\"$row->las_hersteller_ID\">$row->las_hersteller_bez</option>\n";
- }
- }
- ?>
- </select> oder neu
- <input name="la[herst]" type="text" size="30" maxlength="50" value="<?php echo $la['herst']; ?>"/>
- </td>
- </tr>
- <tr><td>Standort</td>
- <td valign="top">Haus
- <select name="la[geb]" onchange="this.form.submit();">
- <?php
- $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->geb_ID == $la['geb']) $select="selected"; else $select="";
- echo "<option $select value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
- }
- }
- ?>
- </select>
- Raum
- <select name="la[raum]">
- <?php
- if ($la['raum'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT raum_ID, raum_nr, raum_name FROM `fhiiqm`.`Raum` WHERE geb_ID='" . $la['geb'] ."' ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->raum_ID == $la['raum']) $select="selected"; else $select="";
- echo "<option $select value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr><td>Verantwortlicher</td>
- <td valign="top"><input class="long20" type="text" name="la[persknr]" id="persknr" value="<?php echo $la['persknr']; ?>"/>
- </td>
- </tr>
- <tr><td>Laser-Infos</td>
- <td><textarea name="la[linfo]" cols="50" rows="4"><?php echo $la['linfo']; ?></textarea></td>
- </tr>
-
- <?php
- if ($la["tstmp"] && $la["tstmp"]>0)
- {
- echo "<tr><td>letzte Änderung</td>";
- $ts = new DateTime($la["tstmp"]);
- echo "<td>".$ts->format('d.m.Y H:i:s')."</td></tr>\n";
- }
- ?>
-
- <input type="hidden" name="la[pid]" id="pid" value="<?php echo $la['pid']; ?>"/>
- <input type="hidden" name="la[tstmp]" value="<?php echo $la['tstmp']; ?>"/>
- <input type="hidden" name="la[okn]" value="<?php echo $okn; ?>"/>
-<!--
-</div>
-</form>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 12/2011
+ *
+ * Form Laser
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $okn = true;
+ if (!$la["geb"]) $la["geb"]="A";
+
+?>
+<div align="center">
+<table>
+<tr><td class="bigger">Die Auswahl eines Verantwortlichen geschieht durch Eingeben von<br />mindesten 2 Zeichen in das entsprechende Feld.
+</td></tr>
+<tr><td class="bigger"> </td></tr>
+</table>
+</div>
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="flas">
+<div align="center">
+ <table border="0" cellspacing="3" cellpadding="3">
+<!-- <div class="ui-widget"> -->
+ <tr>
+ <td>
+ <? if ($laid)
+ {
+ echo "Laser-ID</td>";
+ echo "<td><input class='read' name='la[lid]' type='text' size='5' value='" .$la['lid']."' readonly='readonly' />";
+ echo " ";
+ }
+ echo "gehört zu Laser ";
+ if (!$laid) echo "</td><td>";
+ echo "<select name=\"la[lidref]\">";
+ if ($la["lidref"] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ if ($laid) $wher = " WHERE las_ID <> $laid "; else $wher = "";
+ $sql = "SELECT las_ID, las_bez FROM Laser $wher ORDER BY 2";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($res as $row)
+ {
+ if ($row->las_ID == $la['lidref']) $select="selected"; else $select="";
+ echo "<option $select value='$row->las_ID'>$row->las_ID - $row->las_bez</option>\n";
+ }
+ }
+ ?>
+ </td>
+ </tr>
+ <tr><td>Laserbezeichnung *</td>
+ <td valign="top"><input type="text" name="la[lbez]" id="lbez" size="50" maxlength="250" value="<?php echo $la['lbez']; ?>"/>
+ <?php
+ if (isset($la['lbez']) && $la['lbez']<'!')
+ {
+ echo "<br><span class=\"red\">Laserbezeichnung ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ if ($okn) $okn = true; else $okn=false;
+ ?>
+ </td>
+ </tr>
+ <tr><td>Inventar-Nr.</td>
+ <td valign="top"><input type="text" name="la[invnr]" size="20" maxlength="20" value="<?php echo $la['invnr']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>in Betrieb</td>
+ <td><input type="checkbox" name="la[akt]" value="1" <?php echo ($la["akt"] )? "checked=\"checked\"" : "";?> />
+ </td>
+ </tr>
+ <tr><td>Wellenlänge(nm) von</td>
+ <td valign="top"><input type="text" name="la[wvon]" size="10" maxlength="7" value="<?php echo $la['wvon']; ?>"/>
+ Wellenlänge(nm) bis
+ <input type="text" name="la[wbis]" size="10" maxlength="7" value="<?php echo $la['wbis']; ?>"/></td>
+ </tr>
+ <tr><td>Laserart</td>
+ <td><select name="la[lart]">
+ <?php
+ if ($la['lart'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT las_art_ID, las_art_bez FROM Laser_Art ORDER BY 2";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($res as $row)
+ {
+ if ($row->las_art_ID == $la['lart']) $select="selected"; else $select="";
+ echo "<option $select value='$row->las_art_ID'>$row->las_art_bez</option>\n";
+ }
+ }
+ ?>
+ </select> oder neu
+ <input name="la[lartnew]" type="text" size="30" maxlength="50" value="<?php echo $la['lartnew']; ?>"/> </td>
+ </tr>
+ <tr><td>Lasertyp</td>
+ <td><select name="la[ltyp]">
+ <?php
+ if ($la['ltyp'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT las_typ_ID, las_typ_bez FROM Laser_Typ ORDER BY 2";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($res as $row)
+ {
+ if ($row->las_typ_ID == $la['ltyp']) $select="selected"; else $select="";
+ echo "<option $select value='$row->las_typ_ID'>$row->las_typ_bez</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Laserklasse</td>
+ <td><select name="la[lkla]">
+ <?php
+ if ($la['lkla'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT las_klasse_ID, las_klasse_bez FROM Laser_Klasse ORDER BY 2";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($res as $row)
+ {
+ if ($row->las_klasse_ID == $la['lkla']) $select="selected"; else $select="";
+ echo "<option $select value='$row->las_klasse_ID'>$row->las_klasse_bez</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Schutzstufe</td>
+ <td><select name="la[suid]">
+ <?php
+ if ($la['suid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT schutzst_ID, schutzst_bez FROM Schutzstufe WHERE LEFT(schutzst_bez,2)<>'OD' ORDER BY 2";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($res as $row)
+ {
+ if ($row->schutzst_ID == $la['suid']) $select="selected"; else $select="";
+ echo "<option $select value='$row->schutzst_ID'>$row->schutzst_bez</option>\n";
+ }
+ }
+ ?>
+ </select> Schutzstufe OD
+ <select name="la[suodid]">
+ <?php
+ if ($la['suid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT schutzst_ID, schutzst_bez FROM Schutzstufe WHERE LEFT(schutzst_bez,2)='OD' ORDER BY 2";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($res as $row)
+ {
+ if ($row->schutzst_ID == $la['suodid']) $select="selected"; else $select="";
+ echo "<option $select value='$row->schutzst_ID'>$row->schutzst_bez</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Leistung</td>
+ <td valign="top"><input type="text" name="la[leist]" size="10" maxlength="7" value="<?php echo $la['leist']; ?>"/>
+ Einheit
+ <select name="la[eleist]">
+ <?php
+ $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=1 ORDER BY sort";
+ if ($ree = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($ree as $row)
+ {
+ if ($row->einheit_ID == $la['eleist']) $select="selected"; else $select="";
+ echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>max. Leistung</td>
+ <td valign="top"><input type="text" name="la[leistmax]" size="10" maxlength="7" value="<?php echo $la['leistmax']; ?>"/>
+ Einheit
+ <select name="la[eleistmax]">
+ <?php
+ $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=1 ORDER BY sort";
+ if ($ree = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($ree as $row)
+ {
+ if ($row->einheit_ID == $la['eleistmax']) $select="selected"; else $select="";
+ echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Energie</td>
+ <td valign="top"><input type="text" name="la[eng]" size="10" maxlength="7" value="<?php echo $la['eng']; ?>"/>
+ Einheit
+ <select name="la[eeng]">
+ <?php
+ $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=2 ORDER BY sort";
+ if ($ree = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($ree as $row)
+ {
+ if ($row->einheit_ID == $la['eeng']) $select="selected"; else $select="";
+ echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Apertur</td>
+ <td valign="top"><input type="text" name="la[apt]" size="10" maxlength="7" value="<?php echo $la['apt']; ?>"/>
+ Einheit
+ <select name="la[eapt]">
+ <?php
+ $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=3 ORDER BY sort";
+ if ($ree = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($ree as $row)
+ {
+ if ($row->einheit_ID == $la['eapt']) $select="selected"; else $select="";
+ echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Frequenz</td>
+ <td valign="top"><input type="text" name="la[frq]" size="10" maxlength="7" value="<?php echo $la['frq']; ?>"/>
+ Einheit
+ <select name="la[efrq]">
+ <?php
+ $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=4 ORDER BY sort";
+ if ($ree = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($ree as $row)
+ {
+ if ($row->einheit_ID == $la['efrq']) $select="selected"; else $select="";
+ echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr><td>Impulsbreite</td>
+ <td valign="top"><input type="text" name="la[ipb]" size="10" maxlength="7" value="<?php echo $la['ipb']; ?>"/>
+ Einheit
+ <select name="la[eipb]">
+ <?php
+ $sql = "SELECT einheit_ID,einheit,einheit_beschr FROM Einheit WHERE laser=5 ORDER BY sort";
+ if ($ree = $dbc -> queryObjectArray($sql))
+ {
+ $select = "";
+ foreach ($ree as $row)
+ {
+ if ($row->einheit_ID == $la['eipb']) $select="selected"; else $select="";
+ echo "<option $select value='$row->einheit_ID'>$row->einheit ($row->einheit_beschr)</option>\n";
+ }
+ }
+ ?>
+ </select></td>
+ </tr>
+ <tr>
+ <td>Hersteller (Firma)</td>
+ <td>
+ <select name="la[hstid]">
+ <?php
+ if ($la['hstid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT las_hersteller_ID, las_hersteller_bez FROM fhiiqm.Laser_Hersteller ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->las_hersteller_ID == $la['hstid']) $select="selected"; else $select="";
+ echo "<option $select value=\"$row->las_hersteller_ID\">$row->las_hersteller_bez</option>\n";
+ }
+ }
+ ?>
+ </select> oder neu
+ <input name="la[herst]" type="text" size="30" maxlength="50" value="<?php echo $la['herst']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Standort</td>
+ <td valign="top">Haus
+ <select name="la[geb]" onchange="this.form.submit();">
+ <?php
+ $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->geb_ID == $la['geb']) $select="selected"; else $select="";
+ echo "<option $select value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ Raum
+ <select name="la[raum]">
+ <?php
+ if ($la['raum'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT raum_ID, raum_nr, raum_name FROM `fhiiqm`.`Raum` WHERE geb_ID='" . $la['geb'] ."' ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->raum_ID == $la['raum']) $select="selected"; else $select="";
+ echo "<option $select value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr><td>Verantwortlicher</td>
+ <td valign="top"><input class="long20" type="text" name="la[persknr]" id="persknr" value="<?php echo $la['persknr']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Laser-Infos</td>
+ <td><textarea name="la[linfo]" cols="50" rows="4"><?php echo $la['linfo']; ?></textarea></td>
+ </tr>
+
+ <?php
+ if ($la["tstmp"] && $la["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($la["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($la["uid"]) && $la["uid"])
+ echo " (".$la["uid"] .")";
+ echo "</td></tr>\n";
+ ?>
+
+ <input type="hidden" name="la[pid]" id="pid" value="<?php echo $la['pid']; ?>"/>
+ <input type="hidden" name="la[tstmp]" value="<?php echo $la['tstmp']; ?>"/>
+ <input type="hidden" name="la[okn]" value="<?php echo $okn; ?>"/>
+<!--
+</div>
+</form>
</table> -->
\ No newline at end of file
--- a/fhiiqm/form/login_form.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/login_form.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,37 +1,37 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 08/2011
- *
- * Login-Form
- */
-
-?>
-<div align="center">
-<h3>Anmeldung fhiiqm <?php echo $headl; ?></h3>
-<p>Bitte melden Sie sich mit Ihrer Nutzerkennung an. Das Passwort ist leer, solange Sie es nicht neu setzen.</p>
-</div>
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="flogin">
-<div align="center">
- <table border="0" cellspacing="1" cellpadding="0" bgcolor="#000066"><tr><td bgcolor="#e0e0e0">
- <table border="0" cellspacing="2" cellpadding="4">
- <tr bgcolor="#DEDFE1"><td>Username</td>
- <td valign="top"><input type="text" name="log[user]" id="user" size="20" value="<?php echo $log['user']; ?>"/>
- <?php echo $err1;?>
- </td>
- </tr>
- <tr bgcolor="#F8F8F8"><td>Passwort</td>
- <td valign="top"><input type="password" name="log[pass]" size="20" value="<?php echo $log['pass']; ?>"/>
- <?php echo $err2;?>
- </td>
- </tr>
- <tr bgcolor="#DEDFE1"><td> </td>
- <td><input class="button" type="submit" name="login" value=" login " />
- <!-- <input type="submit" name="abbrechen" value="abbrechen"> -->
- </td>
- </tr>
- </table>
- </td></tr></table>
-</form>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 08/2011
+ *
+ * Login-Form
+ */
+
+?>
+<div align="center">
+<h3>Anmeldung fhiiqm <?php echo $headl; ?></h3>
+<p>Bitte melden Sie sich mit Ihrer FHI-Nutzerkennung an</p>
+</div>
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="flogin">
+<div align="center">
+ <table border="0" cellspacing="1" cellpadding="0" bgcolor="#000066"><tr><td bgcolor="#e0e0e0">
+ <table border="0" cellspacing="2" cellpadding="4">
+ <tr bgcolor="#DEDFE1"><td>Username</td>
+ <td valign="top"><input type="text" name="log[user]" id="user" size="20" value="<?php echo $log['user']; ?>"/>
+ <?php echo $err1;?>
+ </td>
+ </tr>
+ <tr bgcolor="#F8F8F8"><td>Passwort</td>
+ <td valign="top"><input type="password" name="log[pass]" size="20" value="<?php echo $log['pass']; ?>"/>
+ <?php echo $err2;?>
+ </td>
+ </tr>
+ <tr bgcolor="#DEDFE1"><td> </td>
+ <td><input class="button" type="submit" name="login" value=" login " />
+ <!-- <input type="submit" name="abbrechen" value="abbrechen"> -->
+ </td>
+ </tr>
+ </table>
+ </td></tr></table>
+</form>
</div>
\ No newline at end of file
--- a/fhiiqm/form/ma_ed_form.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/ma_ed_form.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,330 +1,342 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 11/2012
- *
- * Form Mitarbeiter/Objekte FHI
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $okn = true;
- if (!$ma)
- {
- $ma['geb'] = 'A';
- $ma['abt'][0] = $dbc -> querySingleItem("SELECT abt_ID FROM Abteilung ORDER BY abt_ID+0 LIMIT 0,1");
- }
-
-?>
-<div align="center">
-<h5>* - Felder sind erforderlich!</h5>
-</div>
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_ma">
-<div align="center">
-<table width="60%" border="0" cellspacing="3" cellpadding="3">
- <tr>
- <td>
- <u>Mitarbeiter</u> FHI?
- </td>
- <td><input name="ma[fhi]" type="checkbox" value="1" <?php if ($ma['fhi']) echo "checked=\"checked\""; ?> onchange="this.form.submit();" />
- </td>
- </tr>
- <tr>
- <?php if (!$ma["fhi"]) echo "<td>Bezeichnung 1 *</td>\n";
- else echo "<td>Name *</td>\n"; ?>
- <td><input name="ma[name]" type="text" size="30" maxlength="50" value="<?php echo $ma['name']; ?>" />
- <?php
- if (isset($ma['name']) && $ma['name']<'!')
- {
- echo "<br><span class=\"red\">Name ist erforderlich!</span>\n";
- $okn = false;
- }
- ?>
- </td>
- </tr>
- <tr>
- <?php if (!$ma["fhi"]) echo "<td>Bezeichnung 2 </td>\n";
- else echo "<td>Vorname </td>\n"; ?>
- <td><input name="ma[vname]" type="text" size="30" maxlength="50" value="<?php echo $ma['vname']; ?>" />
- <?php
- /* if (isset($ma['vname']) && $ma['vname']<'!')
- {
- echo "<br><span class=\"red\">Vorname ist erforderlich!</span>\n";
- $okn = false;
- } */
- ?>
- </td>
- </tr>
- <?php if ($ma["fhi"]) { ?>
- <tr>
- <td>Titel</td>
- <td><input name="ma[titel]" type="text" size="30" maxlength="30" value="<?php echo $ma['titel']; ?>" /></td>
- </tr>
- <?php } ?>
- <tr><td>Ort</td>
- <td valign="top">Haus
- <select name="ma[geb]" onchange="this.form.submit();">
- <?php
- if ($ma['geb'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->geb_ID == $ma['geb'])
- echo "<option selected value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
- else
- echo "<option value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
- }
- }
- ?>
- </select>
- Raum
- <select name="ma[raum]">
- <?php
- if ($ma['raum'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT raum_ID, raum_nr, raum_name FROM `fhiiqm`.`Raum` WHERE geb_ID='" . $ma['geb'] ."' ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->raum_ID == $ma['raum'])
- echo "<option selected value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
- else
- echo "<option value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
-<?php
-/* // deaktiviert am 08.01.2013, Kaendler, Schwarzer
- echo
- "<tr>
- <td>Arbeitsgruppe</td>
- <td><select name=\"ma[rag]\">";
- if ($ma['rag'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT rag_ID, rag_bez, abt_name FROM RaumArb_Gruppe g INNER JOIN Abteilung a
- ON g.abt_ID = a.abt_ID ORDER BY g.abt_ID,rag_ID";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->rag_ID == $ma['rag'])
- {
- echo "<option selected value=\"$row->rag_ID\">$row->abt_name: $row->rag_bez</option>\n";
- }
- else
- echo "<option value=\"$row->rag_ID\">$row->abt_name: $row->rag_bez</option>\n";
- }
- }
- echo
- "</select>
- </td>
- </tr>";
-*/
-?>
- <tr>
- <td>Telefon</td>
- <td><div id="addtel">
- <select name="ma[tel][]" size="1">
- <?php
- $select = null;
- $select = ( "-1"==$ma['tel'][0] ) ? " selected='selected'" : "";
- echo "<option $select value=\"-1\"></option>\n";
-/* $sql = "SELECT telefon_nr,geb_ID,raum_nr, telefon_typ FROM fhiiqm.Telefon t
- LEFT OUTER JOIN Raum r ON t.raum_ID=r.Raum_ID
- ORDER BY telefon_nr"; */
- $sql = "SELECT telefon_nr, telefon_typ FROM fhiiqm.Telefon
- ORDER BY telefon_nr";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->telefon_typ == "fax") $teln = $row->telefon_nr." FAX"; else $teln = $row->telefon_nr;
-// if ($row->raum_nr) $telr = "[". $row->geb_ID. " ". $row->raum_nr . "]"; else $telr = "";
- $select = ( $row->telefon_nr==$ma['tel'][0] ) ? " selected='selected'" : "";
- echo "<option $select value=\"$row->telefon_nr\">$teln</option>\n";
-// $tel .= "'".$row->telefon_nr. "':'" . $teln ." ". $telr. "',";
- $tel .= "'".$row->telefon_nr. "':'" . $teln . "',";
- }
- }
- $tel = substr($tel,0,strlen($tel)-1);
- ?>
- </select>
- <script type="text/javascript">
- <!--
- arr = {<?php echo ($tel); ?>}; // Ergebnis: {key:'value',key:'value',...}
- //-->
- </script>
- oder neu <input name="ma[ntel][]" type="text" size="20" maxlength="20" value="<?php echo $ma['ntel'][0]; ?>" />
- Priorität <select name="ma[so][]" size="1">
- <?php
- $select = ($ma["so"][0] == '-1')? " selected='selected'" : "";
- echo "<option$select value=-1></option>\n";
- for ($i=1; $i<10; $i++)
- {
- $select=($ma["so"][0] == $i)? " selected='selected'" : "";
- echo "<option$select value=$i>$i</option>\n";
- }
- ?>
- </select>
- öffentlich <input name="ma[pub][]" type="checkbox" value="1" <?php if ($ma['pub'][0]) echo "checked"; ?> />
- <a href="<?php echo "javascript:addInput('addtel');" ?>" title="weitere Telefon-Nr."><img src="/fhiiqm/img/add.png" /></a>
- <a href="<?php echo "javascript:delInput('addtel');" ?>" title="löschen letzte Telefon-Nr."><img src="/fhiiqm/img/delete.png" /></a><br />
- <?php
- if (isset($ma) && (!$ok || $sub))
- {
- if (count($ma['ntel'])>1 || count($ma['tel'])>1)
- {
- $i=0;
- foreach ($ma['tel'] as $atel)
- {
- if ($i>0)
- {
- echo "<span></span><select name=\"ma[tel][]\" size=\"1\">";
-
- $select = ( "-1" == $atel ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- foreach ($result as $row)
- {
- if ($row->telefon_typ == "fax") $teln = $row->telefon_nr." FAX"; else $teln = $row->telefon_nr;
-// if ($row->raum_nr) $telr = "[". $row->geb_ID. " ". $row->raum_nr . "]"; else $telr = "";
- $select = ( $row->telefon_nr == $atel ) ? ' selected' : null;
- echo "<option $select value=\"$row->telefon_nr\">$teln</option>\n";
- }
- echo "</select>";
- echo " oder neu <input name=\"ma[ntel][]\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"".$ma['ntel'][$i]."\" />";
- echo " Priorität <select name=\"ma[so][]\" size=\"1\">";
-
- $select = ( $ma["so"][$i] == "-1" ) ? " selected='selected'" : "";
- echo "<option$select value=\"-1\"></option>\n";
- for ($j=1; $j<10; $j++)
- {
- $select=($ma["so"][$i] == $j)? " selected='selected'" : "";
- echo "<option$select value=$j>$j</option>\n";
- }
- echo "</select>\n";
- echo " öffentlich <input name=\"ma[pub][$i]\" type=\"checkbox\" value=\"1\"";
- $check = ($ma['pub'][$i]) ? " checked='checked'" : "" ;
- echo "$check /><br />\n";
- }
- $i++;
- }
- }
- }
- ?>
- </div>
- </td>
- </tr>
- <?php if ($ma["fhi"]) { ?>
- <tr>
- <td>E-Mail</td>
- <td><input name="ma[email]" type="text" size="30" maxlength="100" value="<?php echo $ma['email']; ?>" /></td>
- </tr>
- <?php } ?>
- <tr><td>Abteilung *</td>
- <td valign="top"><div id="addabt">
- <select name="ma[abt][]" onchange="this.form.submit();">
- <?php
- $sql = "SELECT abt_ID, abt_name, abt_long FROM `fhiiqm`.`Abteilung` ORDER BY abt_ID+0";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->abt_ID == $ma['abt'][0])
- echo "<option selected value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n";
- else
- echo "<option value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n";
- $abt .= "'".$row->abt_ID. "':'" . $row->abt_name .": ". $row->abt_long . "',";
- }
- $abt = substr($abt,0,strlen($abt)-1);
- }
- ?>
- </select>
-
- Arbeitsgruppe
- <select name="ma[rag][]">
- <?php
- if ($ma['rag'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT rag_ID, rag_bez FROM `fhiiqm`.`RaumArb_Gruppe` WHERE abt_ID = " .$ma["abt"][0] . " ORDER BY rag_bez";
- if ($resrag = $dbc->queryObjectArray($sql))
- {
- foreach ($resrag as $row)
- {
- if ($row->rag_ID == $ma['rag'][0])
- echo "<option selected value=\"$row->rag_ID\">$row->rag_bez</option>\n";
- else
- echo "<option value=\"$row->rag_ID\">$row->rag_bez</option>\n";
-// $rag .= "'".$row->rag_ID. "':'" . $row->rag_bez . "',";
- }
-// $rag = substr($rag,0,strlen($rag)-1);
- }
- $sql = "SELECT rag_ID, rag_bez, abt_name FROM RaumArb_Gruppe g INNER JOIN Abteilung a
- ON g.abt_ID = a.abt_ID ORDER BY g.abt_ID,rag_ID";
- if ($res = $dbc->queryObjectArray($sql))
- {
- foreach ($res as $row)
- $rag .= "'".$row->rag_ID. "':'" . $row->abt_name . ": ". $row->rag_bez . "',";
- $rag = substr($rag,0,strlen($rag)-1);
- }
- ?>
- </select>
- <script type="text/javascript">
- <!--
- arra = {<?php echo ($abt); ?>}; // Ergebnis: {key:'value',key:'value',...}
- arrg = {<?php echo ($rag); ?>}; // Ergebnis: {key:'value',key:'value',...}
- //-->
- </script>
- <a href="<?php echo "javascript:addInput('addabt');" ?>" title="weitere Arbeitsgruppe"><img src="/fhiiqm/img/add.png" /></a>
- <a href="<?php echo "javascript:delInput('addabt');" ?>" title="löschen letzte Arbeitsgruppe"><img src="/fhiiqm/img/delete.png" /></a><br />
- <?php
- if (isset($ma) && (!$ok || $sub))
- {
- if (count($ma['abt'])>1 || count($ma['rag'])>1)
- {
- $i=0;
- foreach ($ma['abt'] as $eabt)
- {
- if ($i>0)
- {
- echo "<span></span><select name=\"ma[abt][]\" size=\"1\">";
-
- foreach ($result as $row)
- {
- $select = ( $row->abt_ID == $eabt ) ? ' selected' : null;
- echo "<option $select value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n";
- }
- echo "</select>";
- echo " Arbeitsgruppe ";
- echo "<select name='ma[rag][]' size=1>";
- $select = ( $ma["rag"][$i] == "-1" ) ? " selected='selected'" : "";
- echo "<option$select value=\"-1\"></option>\n";
- foreach ($res as $row)
- {
- $select = ( $row->rag_ID == $ma['rag'][$i] ) ? ' selected' : null;
- echo "<option $select value=\"$row->rag_ID\">$row->abt_name: $row->rag_bez</option>\n";
- }
- echo "</select><br />";
- }
- $i++;
- }
- }
- }
- ?>
- </div>
- </td>
- </tr>
- <input type="hidden" name="ma[abtm]" value="<?php echo $ma['abtm']; ?>" />
- <input type="hidden" name="okn" value="<?php echo $okn; ?>" />
-<!--
-</table>
- </div>
-</form>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 11/2012
+ *
+ * Form Mitarbeiter/Objekte FHI
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $okn = true;
+ if (!$ma)
+ {
+ $ma['geb'] = 'A';
+ $ma['abt'][0] = $dbc -> querySingleItem("SELECT abt_ID FROM Abteilung ORDER BY abt_ID+0 LIMIT 0,1");
+ $ma['so'][0] = 1;
+ }
+
+?>
+<div align="center">
+<h5>* - Felder sind erforderlich!</h5>
+</div>
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_ma">
+<div align="center">
+<table width="60%" border="0" cellspacing="3" cellpadding="3">
+ <tr>
+ <td>
+ <u>Mitarbeiter</u> FHI?
+ </td>
+ <td><input name="ma[fhi]" id="fhi" type="checkbox" value="1" <?php if ($ma['fhi']) echo "checked=\"checked\""; ?> onchange="this.form.submit();" />
+ </td>
+ </tr>
+ <tr>
+ <?php if (!$ma["fhi"]) echo "<td>Bezeichnung 1 *</td>\n";
+ else echo "<td>Name *</td>\n"; ?>
+ <td><input name="ma[name]" id="nname" type="text" size="30" maxlength="50" value="<?php echo $ma['name']; ?>" />
+ <?php
+ if (isset($ma['name']) && $ma['name']<'!')
+ {
+ echo "<br><span class=\"red\">Name ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <?php if (!$ma["fhi"]) echo "<td>Bezeichnung 2 </td>\n";
+ else echo "<td>Vorname </td>\n"; ?>
+ <td><input name="ma[vname]" id="vname" type="text" size="30" maxlength="50" value="<?php echo $ma['vname']; ?>" />
+ <?php
+ /* if (isset($ma['vname']) && $ma['vname']<'!')
+ {
+ echo "<br><span class=\"red\">Vorname ist erforderlich!</span>\n";
+ $okn = false;
+ } */
+ ?>
+ </td>
+ </tr>
+ <?php if ($ma["fhi"]) { ?>
+ <tr>
+ <td>Titel</td>
+ <td><input name="ma[titel]" type="text" size="30" maxlength="30" value="<?php echo $ma['titel']; ?>" /></td>
+ </tr>
+ <?php } ?>
+ <tr><td>Ort</td>
+ <td valign="top">Haus
+ <select name="ma[geb]" onchange="this.form.submit();">
+ <?php
+ if ($ma['geb'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->geb_ID == $ma['geb'])
+ echo "<option selected value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
+ else
+ echo "<option value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ Raum
+ <select name="ma[raum]">
+ <?php
+ if ($ma['raum'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT raum_ID, raum_nr, raum_name FROM `fhiiqm`.`Raum` WHERE geb_ID='" . $ma['geb'] ."' ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->raum_ID == $ma['raum'])
+ echo "<option selected value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
+ else
+ echo "<option value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+<?php
+/* // deaktiviert am 08.01.2013, Kaendler, Schwarzer
+ echo
+ "<tr>
+ <td>Arbeitsgruppe</td>
+ <td><select name=\"ma[rag]\">";
+ if ($ma['rag'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT rag_ID, rag_bez, abt_name FROM RaumArb_Gruppe g INNER JOIN Abteilung a
+ ON g.abt_ID = a.abt_ID ORDER BY g.abt_ID,rag_ID";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->rag_ID == $ma['rag'])
+ {
+ echo "<option selected value=\"$row->rag_ID\">$row->abt_name: $row->rag_bez</option>\n";
+ }
+ else
+ echo "<option value=\"$row->rag_ID\">$row->abt_name: $row->rag_bez</option>\n";
+ }
+ }
+ echo
+ "</select>
+ </td>
+ </tr>";
+*/
+?>
+ <tr>
+ <td>Telefon</td>
+ <td><div id="addtel">
+ <select name="ma[tel][]" size="1">
+ <?php
+ $select = null;
+ $select = ( "-1"==$ma['tel'][0] ) ? " selected='selected'" : "";
+ echo "<option $select value=\"-1\"></option>\n";
+/* $sql = "SELECT telefon_nr,geb_ID,raum_nr, telefon_typ FROM fhiiqm.Telefon t
+ LEFT OUTER JOIN Raum r ON t.raum_ID=r.Raum_ID
+ ORDER BY telefon_nr"; */
+ $sql = "SELECT telefon_nr, telefon_typ FROM fhiiqm.Telefon
+ ORDER BY telefon_nr";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->telefon_typ == "fax") $teln = $row->telefon_nr." FAX"; else $teln = $row->telefon_nr;
+// if ($row->raum_nr) $telr = "[". $row->geb_ID. " ". $row->raum_nr . "]"; else $telr = "";
+ $select = ( $row->telefon_nr==$ma['tel'][0] ) ? " selected='selected'" : "";
+ echo "<option $select value=\"$row->telefon_nr\">$teln</option>\n";
+// $tel .= "'".$row->telefon_nr. "':'" . $teln ." ". $telr. "',";
+ $tel .= "'".$row->telefon_nr. "':'" . $teln . "',";
+ }
+ }
+ $tel = substr($tel,0,strlen($tel)-1);
+ ?>
+ </select>
+ <script type="text/javascript">
+ <!--
+ arr = {<?php echo ($tel); ?>}; // Ergebnis: {key:'value',key:'value',...}
+ //-->
+ </script>
+ oder neu <input name="ma[ntel][]" type="text" size="20" maxlength="20" value="<?php echo $ma['ntel'][0]; ?>" />
+ Priorität <select name="ma[so][]" size="1">
+ <?php
+ $select = ($ma["so"][0] == '-1')? " selected='selected'" : "";
+ echo "<option$select value=-1></option>\n";
+ for ($i=1; $i<10; $i++)
+ {
+ $select=($ma["so"][0] == $i)? " selected='selected'" : "";
+ echo "<option$select value=$i>$i</option>\n";
+ }
+ ?>
+ </select>
+ öffentlich <input name="ma[pub][]" type="checkbox" value="1" <?php if ($ma['pub'][0]) echo "checked"; ?> />
+ <a href="<?php echo "javascript:addInput('addtel');" ?>" title="weitere Telefon-Nr."><img src="/fhiiqm/img/add.png" /></a>
+ <a href="<?php echo "javascript:delInput('addtel');" ?>" title="löschen letzte Telefon-Nr."><img src="/fhiiqm/img/delete.png" /></a><br />
+ <?php
+ if (isset($ma) && (!$ok || $sub))
+ {
+ if (count($ma['ntel'])>1 || count($ma['tel'])>1)
+ {
+ $i=0;
+ foreach ($ma['tel'] as $atel)
+ {
+ if ($i>0)
+ {
+ echo "<span></span><select name=\"ma[tel][]\" size=\"1\">";
+
+ $select = ( "-1" == $atel ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ foreach ($result as $row)
+ {
+ if ($row->telefon_typ == "fax") $teln = $row->telefon_nr." FAX"; else $teln = $row->telefon_nr;
+// if ($row->raum_nr) $telr = "[". $row->geb_ID. " ". $row->raum_nr . "]"; else $telr = "";
+ $select = ( $row->telefon_nr == $atel ) ? ' selected' : null;
+ echo "<option $select value=\"$row->telefon_nr\">$teln</option>\n";
+ }
+ echo "</select>";
+ echo " oder neu <input name=\"ma[ntel][]\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"".$ma['ntel'][$i]."\" />";
+ echo " Priorität <select name=\"ma[so][]\" size=\"1\">";
+
+ $select = ( $ma["so"][$i] == "-1" ) ? " selected='selected'" : "";
+ echo "<option$select value=\"-1\"></option>\n";
+ for ($j=1; $j<10; $j++)
+ {
+ $select=($ma["so"][$i] == $j)? " selected='selected'" : "";
+ echo "<option$select value=$j>$j</option>\n";
+ }
+ echo "</select>\n";
+ echo " öffentlich <input name=\"ma[pub][$i]\" type=\"checkbox\" value=\"1\"";
+ $check = ($ma['pub'][$i]) ? " checked='checked'" : "" ;
+ echo "$check /><br />\n";
+ }
+ $i++;
+ }
+ }
+ }
+ ?>
+ </div>
+ </td>
+ </tr>
+ <?php if ($ma["fhi"]) { ?>
+ <tr>
+ <td>E-Mail</td>
+ <td><input name="ma[email]" id="email" type="text" size="30" maxlength="100" value="<?php echo $ma['email']; ?>" /></td>
+ </tr>
+ <?php } ?>
+ <tr><td>Abteilung *</td>
+ <td valign="top"><div id="addabt">
+ <select name="ma[abt][]" onchange="this.form.submit();">
+ <?php
+ $sql = "SELECT abt_ID, abt_name, abt_long FROM `fhiiqm`.`Abteilung` ORDER BY abt_ID+0";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->abt_ID == $ma['abt'][0])
+ echo "<option selected value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n";
+ else
+ echo "<option value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n";
+ $abt .= "'".$row->abt_ID. "':'" . $row->abt_name .": ". $row->abt_long . "',";
+ }
+ $abt = substr($abt,0,strlen($abt)-1);
+ }
+ ?>
+ </select>
+
+ Arbeitsgruppe
+ <select name="ma[rag][]">
+ <?php
+ if ($ma['rag'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT rag_ID, rag_bez FROM `fhiiqm`.`RaumArb_Gruppe` WHERE abt_ID = " .$ma["abt"][0] . " ORDER BY rag_bez";
+ if ($resrag = $dbc->queryObjectArray($sql))
+ {
+ foreach ($resrag as $row)
+ {
+ if ($row->rag_ID == $ma['rag'][0])
+ echo "<option selected value=\"$row->rag_ID\">$row->rag_bez</option>\n";
+ else
+ echo "<option value=\"$row->rag_ID\">$row->rag_bez</option>\n";
+// $rag .= "'".$row->rag_ID. "':'" . $row->rag_bez . "',";
+ }
+// $rag = substr($rag,0,strlen($rag)-1);
+ }
+ $sql = "SELECT rag_ID, rag_bez, abt_name FROM RaumArb_Gruppe g INNER JOIN Abteilung a
+ ON g.abt_ID = a.abt_ID ORDER BY g.abt_ID,rag_ID";
+ if ($res = $dbc->queryObjectArray($sql))
+ {
+ foreach ($res as $row)
+ $rag .= "'".$row->rag_ID. "':'" . $row->abt_name . ": ". $row->rag_bez . "',";
+ $rag = substr($rag,0,strlen($rag)-1);
+ }
+ ?>
+ </select>
+ <script type="text/javascript">
+ <!--
+ arra = {<?php echo ($abt); ?>}; // Ergebnis: {key:'value',key:'value',...}
+ arrg = {<?php echo ($rag); ?>}; // Ergebnis: {key:'value',key:'value',...}
+ //-->
+ </script>
+ <a href="<?php echo "javascript:addInput('addabt');" ?>" title="weitere Arbeitsgruppe"><img src="/fhiiqm/img/add.png" /></a>
+ <a href="<?php echo "javascript:delInput('addabt');" ?>" title="löschen letzte Arbeitsgruppe"><img src="/fhiiqm/img/delete.png" /></a><br />
+ <?php
+ if (isset($ma) && (!$ok || $sub))
+ {
+ if (count($ma['abt'])>1 || count($ma['rag'])>1)
+ {
+ $i=0;
+ foreach ($ma['abt'] as $eabt)
+ {
+ if ($i>0)
+ {
+ echo "<span></span><select name=\"ma[abt][]\" size=\"1\">";
+
+ foreach ($result as $row)
+ {
+ $select = ( $row->abt_ID == $eabt ) ? ' selected' : null;
+ echo "<option $select value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n";
+ }
+ echo "</select>";
+ echo " Arbeitsgruppe ";
+ echo "<select name='ma[rag][]' size=1>";
+ $select = ( $ma["rag"][$i] == "-1" ) ? " selected='selected'" : "";
+ echo "<option$select value=\"-1\"></option>\n";
+ foreach ($res as $row)
+ {
+ $select = ( $row->rag_ID == $ma['rag'][$i] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->rag_ID\">$row->abt_name: $row->rag_bez</option>\n";
+ }
+ echo "</select><br />";
+ }
+ $i++;
+ }
+ }
+ }
+ ?>
+ </div>
+ </td>
+ </tr>
+<?php
+ if ($ma["tstmp"] && $ma["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($ma["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($ma["uid"]) && $ma["uid"])
+ echo " (".$ma["uid"] .")";
+ echo "</td></tr>\n";
+?>
+ <input type="hidden" name="ma[abtm]" value="<?php echo $ma['abtm']; ?>" />
+ <input type="hidden" name="okn" value="<?php echo $okn; ?>" />
+<!--
+</table>
+ </div>
+</form>
-->
\ No newline at end of file
--- a/fhiiqm/form/vertragmf_form.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/form/vertragmf_form.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,349 +1,358 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 03/2013
- *
- * Form Vertrag Multifile
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $okn = true;
-
-?>
-<div align="center">
-<?php
- if (!is_null($_SESSION["recht"]) && !in_array("ve",$_SESSION["recht"]))
- $text = "";
- else
- if (!$cid) $text = "Eingabe"; else $text="Ändern / Löschen";
-?>
-<h3><font face="Verdana, Arial, Helvetica, sans-serif"><?php echo $text;?> Vertragsdaten</font></h3>
-<h5>* - Felder sind erforderlich!</h5>
-</div>
-<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_vertrag" target="_self">
-<div align="center">
-<table width="70%" border="0" cellspacing="3" cellpadding="3">
-<!-- <tr>
- <td>Vertrag-ID *</td>
- <td><input name="vertrag[cid]" type="text" size="10" maxlength="6" value="<?php echo $vtr['cid']; ?>"/>
- <?php
- /* if (isset($vtr['cid']) && $vtr['cid']<'!')
- {
- echo "<br><span class=\"red\">ID ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- $okn = true; */
- ?>
- </td>
- </tr>
--->
- <tr>
- <td>Vertragsbezeichnung *</td>
- <td><input name="vertrag[cname]" id="bez" type="text" size="50" maxlength="50" value="<?php echo $vtr['cname']; ?>"/>
- <?php
- if (isset($vtr['cname']) && $vtr['cname']<'!')
- {
- echo "<br><span class=\"red\">Bezeichnung ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- if ($okn) $okn = true; else $okn=false;
- ?>
- </td>
- </tr>
-<!-- <tr>
- <td>Vertrag Titel</td>
- <td><input name="vertrag[cshort]" type="text" size="30" maxlength="50" value="<?php echo $vtr['cshort']; ?>"/></td>
- </tr>
--->
- <tr>
- <td>Vertrag Beschreibung</td>
- <td><textarea name="vertrag[clong]" cols="50" rows="2"><?php echo $vtr['clong']; ?></textarea>
- <div>max. 100 Zeichen sind möglich</div></td>
- </tr>
- <tr>
- <td>Vertrag-Typ</td>
- <td><select name="vertrag[vtyp]">
- <?php
- if ($vtr['vtyp'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT vtyp_ID, vtyp_bezeichnung FROM Vertrag_Typ ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->vtyp_ID == $vtr['vtyp'])
- echo "<option selected value=\"$row->vtyp_ID\">$row->vtyp_bezeichnung</option>\n";
- else
- echo "<option value=\"$row->vtyp_ID\">$row->vtyp_bezeichnung</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <tr>
- <td>Datum Vertragbeginn</td>
- <td><input class="long10" name="vertrag[bdat]" id="bdat" value="<?php echo $vtr['bdat']; ?>" />
- </tr>
- <tr>
- <td>Datum Vertragende</td>
- <td><input class="long10" name="vertrag[edat]" id="edat" value="<?php echo $vtr['edat']; ?>" />
- <?php
- if ($vtr['bdat'] && $vtr['edat'])
- {
- $dat = $vtr['edat'];
- $edate = new DateTime("$dat");
- $edate = $edate->add(new DateInterval('P1D'));
- $dat = $vtr['bdat'];
- $bdate = new DateTime("$dat");
- $diff = $edate->diff($bdate);
- echo "<br />Vertragsdauer: ".$diff->format('%y Jahr(e), %m Monat(e), %d Tag(e)');
- }
- ?>
- </td>
- </tr>
- <tr>
- <td>automatische Verlängerung</td>
- <td><input name="vertrag[cautoend]" type="checkbox" value="1" <?php if ($vtr["cautoend"]) echo "checked";?>/></td>
- </tr>
- <tr>
- <td>Kündigungsfrist<br />(Monate vor Ablauf)</td>
- <td><input name="vertrag[cnot]" type="text" size="10" maxlength="3" value="<?php echo $vtr['cnot']; ?>"/></td>
- </tr>
- <tr>
- <td>autom. E-Mail vor Vertr.-Ende</td>
- <td><input name="vertrag[email]" type="checkbox" value="1" <?php if ($vtr["email"]) echo "checked";?>/></td>
- </tr>
- <tr>
- <td>Partner (Firma)</td>
- <td>
- <select name="vertrag[partid]">
- <?php
- if ($vtr['partid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT part_ID, part_firma FROM Partner ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->part_ID == $vtr['partid'])
- echo "<option selected value=\"$row->part_ID\">$row->part_firma</option>\n";
- else
- echo "<option value=\"$row->part_ID\">$row->part_firma</option>\n";
- }
- //$result->free();
- }
- ?>
- </select> oder neu
- <input name="vertrag[partner]" type="text" size="30" maxlength="50" value="<?php echo $vtr['partner']; ?>"/>
- </td>
- </tr>
- <tr>
- <td>Ansprechpartner FHI <br /><br />
- Mehrfachauswahl möglich:<br />
- [Strg]-Taste + Anklicken der<br />
- gewünschten Listeneinträge
- </td>
- <td>
- <select name="vertrag[cpers][]" size="7" multiple="multiple">
- <?php
- $select = null;
- if (is_array($vtr['cpers'])) $select = in_array( "-1", $vtr['cpers'] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT persknr, CONCAT (nachname, ', ',IFNULL(vorname,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as pname FROM fhiiqm.Mitarbeiter WHERE aktiv < 2 ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (is_array($vtr['cpers'])) $select = in_array( $row->persknr, $vtr['cpers'] ) ? ' selected' : null;
- echo "<option $select value=\"$row->persknr\">$row->pname</option>\n";
- }
- }
- ?>
- </select>
- </td>
- </tr>
- <?php
- if ($vtr['bdat'])
- {
- echo "<tr>
- <td>jährliche Teilbrutto-Kosten (€)</td><br />
- <td>";
- $j=0;
- if ($vtr['edat'])
- {
- $dat = $vtr['edat'];
- $edate = new DateTime("$dat");
- $ejahr = $edate->format("Y");
- }
- elseif ($vtr["cautoend"]) // automatische Vertragsverlaengerung und kein Endjahr angegeben
- $ejahr = date("Y");
- else
- $ejahr = null;
- if ($ejahr)
- {
- $dat = $vtr['bdat'];
- $bdate = new DateTime("$dat");
- $bjahr = $bdate->format("Y");
- for ($i=(int)$bjahr; $i<(int)$ejahr+1; $i++ )
- {
- echo "<input name=\"vertrag[kjahr][$j]\" type=\"text\" size=\"4\" value=\"$i\"/> ";
- echo "<input class='right' name=\"vertrag[kost][$j]\" type=\"text\" value=\"" . $vtr['kost'][$j] . "\"/><br />\n";
- $j++;
- }
- }
- else
- {
- echo "<input name=\"vertrag[kjahr][$j]\" type=\"text\" size=\"4\" value=\"" . $vtr['bjahr'] . "\"/> ";
- echo "<input class='right' name=\"vertrag[kost][$j]\" type=\"text\" value=\"" . $vtr['kost'][$j] . "\"/>";
- }
-
- echo "</td>
- </tr>";
- }
- ?>
- <tr>
- <td>zugeordnet zu </td>
- <td>
- <select name="vertrag[prodid]">
- <?php
- if ($vtr['prodid'] == -1) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
-// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
-/* if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if ($row->lenp > 70) $prod=$row->prod ."..."; else $prod=$row->prod;
- if ($row->produkt_ID == $vtr['prodid'])
- echo "<option selected value=\"$row->produkt_ID\">$prod</option>\n";
- else
- echo "<option value=\"$row->produkt_ID\">$prod</option>\n";
- }
- }
-*/
- // Recht Produktgruppe beruecksichtigen
- if (is_array($_SESSION["prodg"]))
- {
- foreach ($_SESSION["prodg"] as $val)
- $listg .= "," .$val;
- $listg = substr($listg,1);
- $sql = "CALL fhiiqm.hier_prodgroup('$listg')";
- }
- else
- $sql = "CALL fhiiqm.prod_hiera_all(0,0)";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (strlen($row->bez) > 70)
- $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
- else
- $prod=str_replace(" "," ",htmlentities($row->bez));
- if ($row->prid >0) $color=" class='green'"; else $color="";
- if ($row->prid == $vtr['prodid'])
- echo "<option $color selected value=\"$row->prid\">$prod</option>\n";
- else
- echo "<option $color value=\"$row->prid\">$prod</option>\n";
- }
- }
- unset($row);
- unset($result);
- $sql=null;
- ?>
- </select>
- <br />bitte nur die <font color="green">grünen</font> Einträge wählen
- </td>
- </tr>
- <tr>
- <td>Bemerkung</td>
- <td><textarea name="vertrag[cbem]" cols="50" rows="5"><?php echo $vtr['cbem']; ?></textarea>
- <div>max. 500 Zeichen sind möglich</div></td>
- </tr>
- <?php
- if (isset($vtr['cfname'])) $anzdoc = count($vtr['cfname']); else $anzdoc = 1;
- echo
- "<tr>
- <td>Vertragsdokumente
- <br /> bitte <u>keine</u> Umlaute<br /> in gewählten Dateinamen angeben!</td>
- <td><div id='adddoc'>
- <span></span>\nDok-Name <input name=\"vertrag[cfname][]\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"". $vtr['cfname'][0] ."\" />
-
- Schlagwort <input type='text' name=vertrag[swort][] size=\"30\" maxlength=\"50\" value='".$vtr['swort'][0]."' />";
- echo "<input class='pr' type='checkbox' id='del_0' name='vertrag[del][0]' value='1'/>";
- echo " <a href=\"javascript:addInput('adddoc',$anzdoc)\" title=\"weiteres Dokument\"><img src=\"/fhiiqm/img/add.png\" /></a>
- <a href=\"javascript:markdelInput('adddoc',$anzdoc)\" title=\"löschen markiertes Dokument\"><img src=\"/fhiiqm/img/delete.png\" /></a>";
- if (isset($vtr['cfname'][0]) && $vtr['cfname'][0]<'!')
- {
- echo "<br /><span class=\"red\">Dateiname ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- if ($vtr['cfname'][0]>='!' && $okn) $okn = true; else $okn = false;
- if ($sub)
- {
- echo "<br />Upload-Dokument
- <input type=\"file\" name=\"vfile[]\" size=\"50\" maxlength=\"50\" value=\"" .$_FILES["vfile"]["name"][0] . "\"/>";
- }
- if ($sub || (isset($vtr) && !$ok))
- {
- if (count($vtr['cfname'])>1)
- {
- $i=0;
- foreach ($vtr['cfname'] as $akt)
- {
- if ($i>0)
- {
- echo "<span></span><br />\nDok-Name
- <input name=\"vertrag[cfname][]\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"". $vtr['cfname'][$i] ."\" />
-
- Schlagwort <input type='text' name=vertrag[swort][] size=\"30\" maxlength=\"50\" value='".$vtr['swort'][$i]."' />";
- if (isset($vtr['del'])) $cls = "dispil"; else $cls = "pr";
- if (isset($vtr['del'][$i])) $chk = "checked = ' checked'"; else $chk ="";
- echo "<span id='cbl_$i'> <input class='$cls' type='checkbox' id='del_$i' name='vertrag[del][$i]' value='1'$chk /></span>
- <span id='lb_$i' class='$cls'> löschen?</span>";
- if (isset($vtr['cfname'][$i]) && $vtr['cfname'][$i]<'!')
- {
- echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
- $okn = false;
- }
- else
- if ($vtr['cfname'][$i]>='!' && $okn) $okn = true; else $okn = false;
- echo "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />\n";
- if ($sub)
- {
- echo "<br />Upload-Dokument
- <input type=\"file\" name=\"vfile[]\" size=\"50\" maxlength=\"50\" value=\"" .$_FILES["vfile"]["name"][$i] . "\"/>";
- }
- }
- $i++;
- }
- }
- }
- echo "
- </div>";
- if (count($vtr['cfname'])>0)
- {
- $i=0;
- foreach ($vtr['cfname'] as $akt)
- {
- if ($vtr['cfname'][$i]>='!' && file_exists("documents/".$vtr['cfname'][$i]))
- echo "<br />Dokument anschauen: <a href='/fhiiqm/documents/" . $vtr['cfname'][$i] ."'>" . $vtr['cfname'][$i] . "</a>";
- $i++;
- }
- }
-
- echo "</td>
- </tr>\n";
- ?>
-
- <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/>
- <input type="hidden" name="vertrag[okn]" value="<?php echo $okn; ?>"/>
-
-<!-- </table>
- </div>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 03/2013
+ *
+ * Form Vertrag Multifile
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $okn = true;
+
+?>
+<div align="center">
+<?php
+ if (!is_null($_SESSION["recht"]) && !in_array("ve",$_SESSION["recht"]))
+ $text = "";
+ else
+ if (!$cid) $text = "Eingabe"; else $text="Ändern / Löschen";
+?>
+<h3><font face="Verdana, Arial, Helvetica, sans-serif"><?php echo $text;?> Vertragsdaten</font></h3>
+<h5>* - Felder sind erforderlich!</h5>
+</div>
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_vertrag" target="_self">
+<div align="center">
+<table width="70%" border="0" cellspacing="3" cellpadding="3">
+<!-- <tr>
+ <td>Vertrag-ID *</td>
+ <td><input name="vertrag[cid]" type="text" size="10" maxlength="6" value="<?php echo $vtr['cid']; ?>"/>
+ <?php
+ /* if (isset($vtr['cid']) && $vtr['cid']<'!')
+ {
+ echo "<br><span class=\"red\">ID ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ $okn = true; */
+ ?>
+ </td>
+ </tr>
+-->
+ <tr>
+ <td>Vertragsbezeichnung *</td>
+ <td><input name="vertrag[cname]" id="bez" type="text" size="50" maxlength="50" value="<?php echo $vtr['cname']; ?>"/>
+ <?php
+ if (isset($vtr['cname']) && $vtr['cname']<'!')
+ {
+ echo "<br><span class=\"red\">Bezeichnung ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ if ($okn) $okn = true; else $okn=false;
+ ?>
+ </td>
+ </tr>
+<!-- <tr>
+ <td>Vertrag Titel</td>
+ <td><input name="vertrag[cshort]" type="text" size="30" maxlength="50" value="<?php echo $vtr['cshort']; ?>"/></td>
+ </tr>
+-->
+ <tr>
+ <td>Vertrag Beschreibung</td>
+ <td><textarea name="vertrag[clong]" cols="50" rows="2"><?php echo $vtr['clong']; ?></textarea>
+ <div>max. 100 Zeichen sind möglich</div></td>
+ </tr>
+ <tr>
+ <td>Vertrag-Typ</td>
+ <td><select name="vertrag[vtyp]">
+ <?php
+ if ($vtr['vtyp'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT vtyp_ID, vtyp_bezeichnung FROM Vertrag_Typ ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->vtyp_ID == $vtr['vtyp'])
+ echo "<option selected value=\"$row->vtyp_ID\">$row->vtyp_bezeichnung</option>\n";
+ else
+ echo "<option value=\"$row->vtyp_ID\">$row->vtyp_bezeichnung</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Datum Vertragbeginn</td>
+ <td><input class="long10" name="vertrag[bdat]" id="bdat" value="<?php echo $vtr['bdat']; ?>" />
+ </tr>
+ <tr>
+ <td>Datum Vertragende</td>
+ <td><input class="long10" name="vertrag[edat]" id="edat" value="<?php echo $vtr['edat']; ?>" />
+ <?php
+ if ($vtr['bdat'] && $vtr['edat'])
+ {
+ $dat = $vtr['edat'];
+ $edate = new DateTime("$dat");
+ $edate = $edate->add(new DateInterval('P1D'));
+ $dat = $vtr['bdat'];
+ $bdate = new DateTime("$dat");
+ $diff = $edate->diff($bdate);
+ echo "<br />Vertragsdauer: ".$diff->format('%y Jahr(e), %m Monat(e), %d Tag(e)');
+ }
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>automatische Verlängerung</td>
+ <td><input name="vertrag[cautoend]" type="checkbox" value="1" <?php if ($vtr["cautoend"]) echo "checked";?>/></td>
+ </tr>
+ <tr>
+ <td>Kündigungsfrist<br />(Monate vor Ablauf)</td>
+ <td><input name="vertrag[cnot]" type="text" size="10" maxlength="3" value="<?php echo $vtr['cnot']; ?>"/></td>
+ </tr>
+ <tr>
+ <td>autom. E-Mail vor Vertr.-Ende</td>
+ <td><input name="vertrag[email]" type="checkbox" value="1" <?php if ($vtr["email"]) echo "checked";?>/></td>
+ </tr>
+ <tr>
+ <td>Partner (Firma)</td>
+ <td>
+ <select name="vertrag[partid]">
+ <?php
+ if ($vtr['partid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT part_ID, part_firma FROM Partner ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->part_ID == $vtr['partid'])
+ echo "<option selected value=\"$row->part_ID\">$row->part_firma</option>\n";
+ else
+ echo "<option value=\"$row->part_ID\">$row->part_firma</option>\n";
+ }
+ //$result->free();
+ }
+ ?>
+ </select> oder neu
+ <input name="vertrag[partner]" type="text" size="30" maxlength="50" value="<?php echo $vtr['partner']; ?>"/>
+ </td>
+ </tr>
+ <tr>
+ <td>Ansprechpartner FHI <br /><br />
+ Mehrfachauswahl möglich:<br />
+ [Strg]-Taste + Anklicken der<br />
+ gewünschten Listeneinträge
+ </td>
+ <td>
+ <select name="vertrag[cpers][]" size="7" multiple="multiple">
+ <?php
+ $select = null;
+ if (is_array($vtr['cpers'])) $select = in_array( "-1", $vtr['cpers'] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT persknr, CONCAT (nachname, ', ',IFNULL(vorname,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as pname FROM fhiiqm.Mitarbeiter WHERE aktiv < 2 ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (is_array($vtr['cpers'])) $select = in_array( $row->persknr, $vtr['cpers'] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->persknr\">$row->pname</option>\n";
+ }
+ }
+ ?>
+ </select>
+ </td>
+ </tr>
+ <?php
+ if ($vtr['bdat'])
+ {
+ echo "<tr>
+ <td>jährliche Teilbrutto-Kosten (€)</td><br />
+ <td>";
+ $j=0;
+ if ($vtr['edat'])
+ {
+ $dat = $vtr['edat'];
+ $edate = new DateTime("$dat");
+ $ejahr = $edate->format("Y");
+ }
+ elseif ($vtr["cautoend"]) // automatische Vertragsverlaengerung und kein Endjahr angegeben
+ $ejahr = date("Y");
+ else
+ $ejahr = null;
+ if ($ejahr)
+ {
+ $dat = $vtr['bdat'];
+ $bdate = new DateTime("$dat");
+ $bjahr = $bdate->format("Y");
+ for ($i=(int)$bjahr; $i<(int)$ejahr+1; $i++ )
+ {
+ echo "<input name=\"vertrag[kjahr][$j]\" type=\"text\" size=\"4\" value=\"$i\"/> ";
+ echo "<input class='right' name=\"vertrag[kost][$j]\" type=\"text\" value=\"" . $vtr['kost'][$j] . "\"/><br />\n";
+ $j++;
+ }
+ }
+ else
+ {
+ echo "<input name=\"vertrag[kjahr][$j]\" type=\"text\" size=\"4\" value=\"" . $vtr['bjahr'] . "\"/> ";
+ echo "<input class='right' name=\"vertrag[kost][$j]\" type=\"text\" value=\"" . $vtr['kost'][$j] . "\"/>";
+ }
+
+ echo "</td>
+ </tr>";
+ }
+ ?>
+ <tr>
+ <td>zugeordnet zu </td>
+ <td>
+ <select name="vertrag[prodid]">
+ <?php
+ if ($vtr['prodid'] == -1) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+// $sql = "SELECT produkt_ID, LEFT(prod_name,70) AS prod, LENGTH(prod_name) AS lenp FROM Produkt ORDER BY 2";
+/* if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if ($row->lenp > 70) $prod=$row->prod ."..."; else $prod=$row->prod;
+ if ($row->produkt_ID == $vtr['prodid'])
+ echo "<option selected value=\"$row->produkt_ID\">$prod</option>\n";
+ else
+ echo "<option value=\"$row->produkt_ID\">$prod</option>\n";
+ }
+ }
+*/
+ // Recht Produktgruppe beruecksichtigen
+ if (is_array($_SESSION["prodg"]))
+ {
+ foreach ($_SESSION["prodg"] as $val)
+ $listg .= "," .$val;
+ $listg = substr($listg,1);
+ $sql = "CALL fhiiqm.hier_prodgroup('$listg')";
+ }
+ else
+ $sql = "CALL fhiiqm.prod_hiera_all(0,0)";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (strlen($row->bez) > 70)
+ $prod=str_replace(" "," ",htmlentities(substr($row->bez,0,70))) ."...";
+ else
+ $prod=str_replace(" "," ",htmlentities($row->bez));
+ if ($row->prid >0) $color=" class='green'"; else $color="";
+ if ($row->prid == $vtr['prodid'])
+ echo "<option $color selected value=\"$row->prid\">$prod</option>\n";
+ else
+ echo "<option $color value=\"$row->prid\">$prod</option>\n";
+ }
+ }
+ unset($row);
+ unset($result);
+ $sql=null;
+ ?>
+ </select>
+ <br />bitte nur die <font color="green">grünen</font> Einträge wählen
+ </td>
+ </tr>
+ <tr>
+ <td>Bemerkung</td>
+ <td><textarea name="vertrag[cbem]" cols="50" rows="5"><?php echo $vtr['cbem']; ?></textarea>
+ <div>max. 500 Zeichen sind möglich</div></td>
+ </tr>
+ <?php
+ if (isset($vtr['cfname'])) $anzdoc = count($vtr['cfname']); else $anzdoc = 1;
+ echo
+ "<tr>
+ <td>Vertragsdokumente
+ <br /> bitte <u>keine</u> Umlaute<br /> in gewählten Dateinamen angeben!</td>
+ <td><div id='adddoc'>
+ <span></span>\nDok-Name <input name=\"vertrag[cfname][]\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"". $vtr['cfname'][0] ."\" />
+
+ Schlagwort <input type='text' name=vertrag[swort][] size=\"30\" maxlength=\"50\" value='".$vtr['swort'][0]."' />";
+ echo "<input class='pr' type='checkbox' id='del_0' name='vertrag[del][0]' value='1'/>";
+ echo " <a href=\"javascript:addInput('adddoc',$anzdoc)\" title=\"weiteres Dokument\"><img src=\"/fhiiqm/img/add.png\" /></a>
+ <a href=\"javascript:markdelInput('adddoc',$anzdoc)\" title=\"löschen markiertes Dokument\"><img src=\"/fhiiqm/img/delete.png\" /></a>";
+ if (isset($vtr['cfname'][0]) && $vtr['cfname'][0]<'!')
+ {
+ echo "<br /><span class=\"red\">Dateiname ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ if ($vtr['cfname'][0]>='!' && $okn) $okn = true; else $okn = false;
+ if ($sub)
+ {
+ echo "<br />Upload-Dokument
+ <input type=\"file\" name=\"vfile[]\" size=\"50\" maxlength=\"50\" value=\"" .$_FILES["vfile"]["name"][0] . "\"/>";
+ }
+ if ($sub || (isset($vtr) && !$ok))
+ {
+ if (count($vtr['cfname'])>1)
+ {
+ $i=0;
+ foreach ($vtr['cfname'] as $akt)
+ {
+ if ($i>0)
+ {
+ echo "<span></span><br />\nDok-Name
+ <input name=\"vertrag[cfname][]\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"". $vtr['cfname'][$i] ."\" />
+
+ Schlagwort <input type='text' name=vertrag[swort][] size=\"30\" maxlength=\"50\" value='".$vtr['swort'][$i]."' />";
+ if (isset($vtr['del'])) $cls = "dispil"; else $cls = "pr";
+ if (isset($vtr['del'][$i])) $chk = "checked = ' checked'"; else $chk ="";
+ echo "<span id='cbl_$i'> <input class='$cls' type='checkbox' id='del_$i' name='vertrag[del][$i]' value='1'$chk /></span>
+ <span id='lb_$i' class='$cls'> löschen?</span>";
+ if (isset($vtr['cfname'][$i]) && $vtr['cfname'][$i]<'!')
+ {
+ echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
+ $okn = false;
+ }
+ else
+ if ($vtr['cfname'][$i]>='!' && $okn) $okn = true; else $okn = false;
+ echo "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />\n";
+ if ($sub)
+ {
+ echo "<br />Upload-Dokument
+ <input type=\"file\" name=\"vfile[]\" size=\"50\" maxlength=\"50\" value=\"" .$_FILES["vfile"]["name"][$i] . "\"/>";
+ }
+ }
+ $i++;
+ }
+ }
+ }
+ echo "
+ </div>";
+ if (count($vtr['cfname'])>0)
+ {
+ $i=0;
+ foreach ($vtr['cfname'] as $akt)
+ {
+ if ($vtr['cfname'][$i]>='!' && file_exists("documents/".$vtr['cfname'][$i]))
+ echo "<br />Dokument anschauen: <a href='/fhiiqm/documents/" . $vtr['cfname'][$i] ."'>" . $vtr['cfname'][$i] . "</a>";
+ $i++;
+ }
+ }
+
+ echo "</td>
+ </tr>\n";
+ if ($vtr["tstmp"] && $vtr["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($vtr["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($vtr["uid"]) && $vtr["uid"])
+ echo " (".$vtr["uid"] .")";
+ echo "</td></tr>\n";
+ ?>
+
+ <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/>
+ <input type="hidden" name="vertrag[okn]" value="<?php echo $okn; ?>"/>
+
+<!-- </table>
+ </div>
</form> -->
\ No newline at end of file
--- a/fhiiqm/inc/conf.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/inc/conf.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,20 +1,28 @@
-<?php
-
-/**
- * @author B.Schwarzer, Fritz-Haber-Institut
- * @copyright 05/2011
- */
-
-//global $config; // wenn so vereinbart, dann ueberall sichtbar
-
-$config = array(
-// DB Verbindung
- "server"=>"achilleus",
-// "server"=>"localhost",
- "user"=>"www",
- "passwort"=>"fhiiqm",
- "dbname"=>"fhiiqm",
- "dbtyp"=>"mysql"
- );
-
+<?php
+
+/**
+ * @author B.Schwarzer, Fritz-Haber-Institut
+ * @copyright 05/2011
+ */
+
+//global $config; // wenn so vereinbart, dann ueberall sichtbar
+
+$config = array(
+// DB Verbindung
+ "server"=>"achilleus",
+// "server"=>"localhost",
+ "user"=>"www",
+ "passwort"=>"fhiiqm",
+ "dbname"=>"fhiiqm",
+ "dbtyp"=>"mysql"
+ );
+
+$confr = array(
+ "server" => "reload",
+ "user" => "telefon",
+ "passwort" => "telefon",
+ "dbname" => "fhi");
+
+ $ldaprdn = "cn=admin,dc=rz-berlin,dc=mpg,dc=de";
+ $ldappwd = 'ooboot';
?>
\ No newline at end of file
--- a/fhiiqm/inc/dbconnect.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/inc/dbconnect.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,233 +1,243 @@
-<?php
-//include_once("configy.inc.php");
-/**
- * dbconnection
- *
- * @package fhiiqm
- * @author IQM achilleus
- * @copyright Bettina Schwarzer
- * @version 05/2011
- * @access public
- */
-class dbconnection
- { protected $_server;
- protected $_user;
- protected $_passwort;
- protected $_dbname;
- var $_dbtyp;
-
- protected $_connid;
- protected $_statement;
- var $error;
- var $_lastmessage;
-
- public $result;
-
- function __construct()
- {
- include_once("conf.inc.php");
-// global $config;
-
- $this->_server = ( isset($server) && $server ) ? $server : $config["server"];
- $this->_user = ( isset($user) && $user ) ? $user : $config["user"];
- $this->_passwort = ( isset($passwort) && $passwort ) ? $passwort : $config["passwort"];
- $this->_dbname = ( isset($dbname) && $dbname ) ? $dbname : $config["dbname"];
-
- $this->_connid = false;
- $this->error = "";
- $this->_lastmessage = "";
-// $this -> _connid = @new mysqli($this->_server, $this->_user, $this->_passwort, $this->_dbname);
- $this->_connid = mysqli_init();
- $this->_connid->real_connect($this->_server, $this->_user, $this->_passwort, $this->_dbname);
-// $this->_connid->set_charset("utf8");
-// echo $this-> _connid->character_set_name()."<br>\n";
-// $this -> _connid -> set_charset('latin1'); //latin1_swedish_ci, ist Standard
-// echo $this-> _connid->character_set_name()."<br>\n";
-
- if (mysqli_connect_errno())
- {
- $this->error = mysqli_connect_error();
- $this -> _connid = false;
-// printf("keine Verbindung zu %s, Fehler: %s", $config["dbname"], $this->error);
- exit();
- }
-// printf("Verbindung zu %s steht<br>\n", $config["dbname"]);
-// echo "Verbindung zu " . $config["dbname"] . " steht.<br>\n";
- }
-
- function __destruct()
- {
- $this -> close();
- }
-
- function close()
- {
- if ($this -> _connid)
- {
- $this -> _connid -> close();
- $this -> _connid = false;
- }
- $this->error = "";
-
- }
-
-
- function queryObjectArray($sql)
- {// in $result_arr steht Array des Ergebnisses als Objekt
- if ( is_string($sql) )
- {
- if ($this->result = $this->_connid->query($sql))
- {
- if ($this->result->num_rows)
- {
- while ($row = $this->result->fetch_object())
- $result_arr[] = $row;
- $this->result->free();
- $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
- return $result_arr;
- }
- else
- { //kein Ergebnis
- $this->error = "";
- if (isset($this->result) && is_object($this->result)) $this->result->free();
- $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
- return false;
- }
- }
- else
- {
- $this->error = $this->_connid->error;
- return false;
- }
- }
- else
- {
- $this->error = "'$sql'<br> ist kein SQL-Statement!";
- return false;
- }
-
- }
-
- function queryRow($sql)
- {// in $result steht einfaches Array, Zugriff auf Element ueber Index
- if ( is_string($sql) )
- {
- if ($this->result = $this->_connid->query($sql))
- {
- if ($this->result->num_rows)
- {
- while ($row = $this->result->fetch_row())
- $result_arr[] = $row;
- $this->result->free();
- $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
- return $result_arr;
- }
- else
- { //kein Ergebnis
- $this->error = "";
- if (isset($this->result) && is_object($this->result)) $this->result->free();
- $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
- return false;
- }
- }
- else
- {
- $this->error = $this->_connid->error;
- return false;
- }
- }
- else
- {
- $this->error = "'$sql'<br> ist kein SQL-Statement!";
- return false;
- }
- }
-
- function querySingleItem($sql)
- {// gibt nur 1 Zeile mit einer Spalte zurueck, z.B. Count()
- if ($this->result = $this->_connid->query($sql))
- {
- if ($row = $this->result->fetch_array())
- {
- $this->result->close();
- return $row[0];
- }
- else return false;
- }
- else
- {
- $this->error = $this->_connid->error;
- return false;
-
- }
- }
-
- function execute($sql)
- {// INSERT, UPDATE, DELETE
- if ($this->_connid->real_query($sql))
- return true;
- else
- {
- $this->error = $this->_connid->errno . ": " . $this->_connid->error;
- return false;
- }
- }
-
- function insertId()
- {// liefert letzten Autowert bei INSERT
- return $this->_connid->insert_id;
- }
-
- function numrows($sql)
- {// Anzahl der Ergebniszeilen
- if ($this->result = $this->_connid->query($sql))
- {
- return $this->result -> num_rows;
- }
- else
- return 0;
- }
-
- function setcharset($string)
- {// Zeichensatz fuer Client-Verbindung festlegen
- if ($this -> _connid) $this ->_connid -> set_charset($string);
- }
-
- function escapestring($string)
- {// string escapen: '," ersetzen durch \',\"
- if ($this -> _connid) return $this ->_connid -> real_escape_string($string);
- }
-
- function getclient_info()
- {// MySQL-Information
- if ($this -> _connid) return $this ->_connid -> get_client_info();
- }
-
- function gethost_info()
- {// Typ der Verbindung zur DB
- if ($this -> _connid) return $this ->_connid -> get_server_info();
- }
-
- function stmtinit()
- {// $_statement wird als Objekt der mysqli-Klasse erstellt, damit simd alle Methoden der MySQLi_STMT class verfuegbar
- if ($this -> _connid) return $this->_statement = $this->_connid->stmt_init();
- }
-}
-
-/**
- * DateTime_s
- *
- * @package fhiiqm
- * @author IQM achilleus
- * @copyright Bettina Schwarzer
- * @version 07/2011
- * @access public
- */
-class DateTime_s extends DateTime
-{
- public function __toString()
- { // Datetime -> String fuer INSERT/UPDATE
- return $this->format('Y-m-d H:i:s');
- }
-}
+<?php
+//include_once("configy.inc.php");
+/**
+ * dbconnection
+ *
+ * @package fhiiqm
+ * @author IQM achilleus
+ * @copyright Bettina Schwarzer
+ * @version 05/2011
+ * @access public
+ */
+class dbconnection
+ { protected $_server;
+ protected $_user;
+ protected $_passwort;
+ protected $_dbname;
+ var $_dbtyp;
+
+ protected $_connid;
+ protected $_statement;
+ var $error;
+ var $_lastmessage;
+
+ public $result;
+
+ function __construct($dbname='')
+ {
+ include_once("conf.inc.php");
+// global $config;
+
+ if ($dbname == "fhi")
+ {
+ $this->_server = ( isset($server) && $server ) ? $server : $confr["server"];
+ $this->_user = ( isset($user) && $user ) ? $user : $confr["user"];
+ $this->_passwort = ( isset($passwort) && $passwort ) ? $passwort : $confr["passwort"];
+ $this->_dbname = ( isset($dbname) && $dbname ) ? $dbname : $confr["dbname"];
+ }
+ else
+ {
+ $this->_server = ( isset($server) && $server ) ? $server : $config["server"];
+ $this->_user = ( isset($user) && $user ) ? $user : $config["user"];
+ $this->_passwort = ( isset($passwort) && $passwort ) ? $passwort : $config["passwort"];
+ $this->_dbname = ( isset($dbname) && $dbname ) ? $dbname : $config["dbname"];
+ }
+
+ $this->_connid = false;
+ $this->error = "";
+ $this->_lastmessage = "";
+// $this -> _connid = @new mysqli($this->_server, $this->_user, $this->_passwort, $this->_dbname);
+ $this->_connid = mysqli_init();
+ $this->_connid->real_connect($this->_server, $this->_user, $this->_passwort, $this->_dbname);
+// $this->_connid->set_charset("utf8");
+// echo $this-> _connid->character_set_name()."<br>\n";
+// $this -> _connid -> set_charset('latin1'); //latin1_swedish_ci, ist Standard
+// echo $this-> _connid->character_set_name()."<br>\n";
+
+ if (mysqli_connect_errno())
+ {
+ $this->error = mysqli_connect_error();
+ $this -> _connid = false;
+// printf("keine Verbindung zu %s, Fehler: %s", $config["dbname"], $this->error);
+ exit();
+ }
+// printf("Verbindung zu %s steht<br>\n", $config["dbname"]);
+// echo "Verbindung zu " . $config["dbname"] . " steht.<br>\n";
+ }
+
+ function __destruct()
+ {
+ $this -> close();
+ }
+
+ function close()
+ {
+ if ($this -> _connid)
+ {
+ $this -> _connid -> close();
+ $this -> _connid = false;
+ }
+ $this->error = "";
+
+ }
+
+
+ function queryObjectArray($sql)
+ {// in $result_arr steht Array des Ergebnisses als Objekt
+ if ( is_string($sql) )
+ {
+ if ($this->result = $this->_connid->query($sql))
+ {
+ if ($this->result->num_rows)
+ {
+ while ($row = $this->result->fetch_object())
+ $result_arr[] = $row;
+ $this->result->free();
+ $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
+ return $result_arr;
+ }
+ else
+ { //kein Ergebnis
+ $this->error = "";
+ if (isset($this->result) && is_object($this->result)) $this->result->free();
+ $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
+ return false;
+ }
+ }
+ else
+ {
+ $this->error = $this->_connid->error;
+ return false;
+ }
+ }
+ else
+ {
+ $this->error = "'$sql'<br> ist kein SQL-Statement!";
+ return false;
+ }
+
+ }
+
+ function queryRow($sql)
+ {// in $result steht einfaches Array, Zugriff auf Element ueber Index
+ if ( is_string($sql) )
+ {
+ if ($this->result = $this->_connid->query($sql))
+ {
+ if ($this->result->num_rows)
+ {
+ while ($row = $this->result->fetch_row())
+ $result_arr[] = $row;
+ $this->result->free();
+ $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
+ return $result_arr;
+ }
+ else
+ { //kein Ergebnis
+ $this->error = "";
+ if (isset($this->result) && is_object($this->result)) $this->result->free();
+ $this->_connid->next_result(); // wegen OUT-Parameter in stored procedures
+ return false;
+ }
+ }
+ else
+ {
+ $this->error = $this->_connid->error;
+ return false;
+ }
+ }
+ else
+ {
+ $this->error = "'$sql'<br> ist kein SQL-Statement!";
+ return false;
+ }
+ }
+
+ function querySingleItem($sql)
+ {// gibt nur 1 Zeile mit einer Spalte zurueck, z.B. Count()
+ if ($this->result = $this->_connid->query($sql))
+ {
+ if ($row = $this->result->fetch_array())
+ {
+ $this->result->close();
+ return $row[0];
+ }
+ else return false;
+ }
+ else
+ {
+ $this->error = $this->_connid->error;
+ return false;
+
+ }
+ }
+
+ function execute($sql)
+ {// INSERT, UPDATE, DELETE
+ if ($this->_connid->real_query($sql))
+ return true;
+ else
+ {
+ $this->error = $this->_connid->errno . ": " . $this->_connid->error;
+ return false;
+ }
+ }
+
+ function insertId()
+ {// liefert letzten Autowert bei INSERT
+ return $this->_connid->insert_id;
+ }
+
+ function numrows($sql)
+ {// Anzahl der Ergebniszeilen
+ if ($this->result = $this->_connid->query($sql))
+ {
+ return $this->result -> num_rows;
+ }
+ else
+ return 0;
+ }
+
+ function setcharset($string)
+ {// Zeichensatz fuer Client-Verbindung festlegen
+ if ($this -> _connid) $this ->_connid -> set_charset($string);
+ }
+
+ function escapestring($string)
+ {// string escapen: '," ersetzen durch \',\"
+ if ($this -> _connid) return $this ->_connid -> real_escape_string($string);
+ }
+
+ function getclient_info()
+ {// MySQL-Information
+ if ($this -> _connid) return $this ->_connid -> get_client_info();
+ }
+
+ function gethost_info()
+ {// Typ der Verbindung zur DB
+ if ($this -> _connid) return $this ->_connid -> get_server_info();
+ }
+
+ function stmtinit()
+ {// $_statement wird als Objekt der mysqli-Klasse erstellt, damit simd alle Methoden der MySQLi_STMT class verfuegbar
+ if ($this -> _connid) return $this->_statement = $this->_connid->stmt_init();
+ }
+}
+
+/**
+ * DateTime_s
+ *
+ * @package fhiiqm
+ * @author IQM achilleus
+ * @copyright Bettina Schwarzer
+ * @version 07/2011
+ * @access public
+ */
+class DateTime_s extends DateTime
+{
+ public function __toString()
+ { // Datetime -> String fuer INSERT/UPDATE
+ return $this->format('Y-m-d H:i:s');
+ }
+}
?>
\ No newline at end of file
--- a/fhiiqm/inc/func_lib.inc.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/inc/func_lib.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,322 +1,632 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 06/2011
- *
- *
- */
-
- function tab_column($colnum=2,$bez,$sort,$dir,$fcol=0,$fanr=0,$filtb="",$start="",$anzds="25",$id="",$g=0,$tab="",$adr="")
- {
- /** beliebige Tabellenspalte mit Sortier-/Filtersymbolen und Links generieren
- * Parameter
- * $colnum SpaltenNr. in SELECT-Statement
- * $bez Spaltenbezeichnung
- * $sort aktuelle SortspaltenNr.
- * $dir Sortrichtung (ASC/DESC)
- * $fcol SpaltenNr. Filter (=0, wenn nicht gefiltert werden soll)
- * $fanr aktuelle FilterspaltenNr.
- * $filtb Filterbegriff
- * $start ab Datensatz $start+1
- * $anzds Anzahl angezeigter Datensaetze
- * $id fuer spezielle ID als zusaetzl. Filter (Laser-Log)
- * $g Gesamtansicht (rag-gefahr-massnahmen-vorsorge)
- * [$tab fuer tab-basierte Seite
- * $adr wohin gehen (Teilseite)]
- */
-
- if ($colnum == $sort)
- if ($dir == 'DESC')
- {
- $auf = "auf";
- $ab = "ab_activ";
- }
- else
- {
- $auf = "auf_activ";
- $ab = "ab";
- }
- else
- {
- $auf = "auf";
- $ab = "ab";
- }
-
- if ($bez == "Haus") $tip = "Haus: A, B, BES, C, D, E, F, FAB, HAR, K, L, M, N, P, Q, R, S, T, U"; else $tip = "Filter";
- if ($tab > "!")
- {
- $addr = $adr;
- $ank = $tab;
- }
- else
- {
- $addr = $_SERVER['PHP_SELF'];
- $ank = "";
- }
- if ($fcol>0 && $fanr>0) // Filtern nach Spalte moeglich
- {
- if ($fcol == $fanr) $filt = "filter_activ"; else $filt = "filter";
- $filt = " <a href='".$addr."$ank?f=$fcol&s=$sort&d=$dir&st=$start&z=$anzds&i=$id&g=$g'><img src='/fhiiqm/img/$filt.gif' border='0' width='14' hight='11' alt='$tip' title='$tip'></a>";
- }
- else
- $filt="";
- if ($filtb>'!') $where = "&f=$fanr&b=$filtb&i=$id&g=$g"; else $where="&i=$id&g=$g";
- echo "<th>$bez <a href='".$addr."$ank?s=$colnum$where&st=$start&z=$anzds'><img src='/fhiiqm/img/$auf.gif' border='0' width='11' hight='11' alt='sort aufsteigend' title='sort aufsteigend'></a>
- <a href='".$addr."$ank?s=$colnum&d=DESC$where&st=$start&z=$anzds'><img src='/fhiiqm/img/$ab.gif' border='0' width='11' hight='11' alt='sort absteigend' title='sort absteigend'></a>$filt</th>\n";
- }
-
- function date_obj($jahr,$mon,$tag)
- {
- /** prueft auf valides Datum und erstellt DateTime-Objekt, wenn o.k.
- * Voraussetzung: Klasse 'DateTime_s' ist included
- */
- include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if ($jahr && $mon && $tag)
- {
- $dat = $jahr."-".$mon."-".$tag;
- // Datum valid?
- if (!$dat = new DateTime_s($dat)) $dat = null;
- }
- else
- $dat = null;
- return $dat;
-
- }
-
- function liste_links($start,$zeil,$anz,$liste)
- {
- /** erstellt links zu Seiten einer Liste
- * Parameter
- * $start Beginn bei DS $start+1 (1.DS -> $start=0)
- * $zeil Anzahl Zeilen pro Seite
- * $anz Anzahl DS gesamt
- * $liste weitere Inhalte fuer $_GET-Array
- */
- $page = 1;
- while (($page-1)*$zeil < $anz)
- {
- $be = ($page-1)*$zeil+1;
- if (($page-1)*$zeil+$zeil < $anz) $en = ($page-1)*$zeil+$zeil; else $en = $anz;
- $st = ($page-1)*$zeil;
- if ($start == $be-1)
- echo "$be - $en";
- else
- echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?st=$st$liste\" class=\"sc\">$be - $en</a>";
- if (($page-1)*$zeil+$zeil < $anz) echo "<span class=\"sc\"> | </span>";
- $page++;
- }
-
- }
-
- function login($target, $headl="")
- {
- /** zeigt Login-Form, prueft userid und passwort, leitet zu gewuenschter Seite weiter
- * Parameter
- * $target Zieladresse
- * $headl Ueberschrift Loginform
- */
-
- session_start();
- if ($_SESSION["userid"])
- {
- header("Location: $target");
- exit;
- }
-
-
-
- $login = $_POST["login"];
- $log = $_POST["log"];
-
- if ($login)
- {
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- $stmt -> prepare("SELECT userid, pwd FROM userweb WHERE userid = ?");
- $stmt -> bind_param('s',$log["user"]);
- $result = $stmt -> execute();
- // $stmt -> store_result(); // wegen weiterer query dies oder $stmt -> free_result();
- }
- if ($result)
- {
- if ($log["pass"] <= '') $log["pass"] = null;
- $stmt->bind_result($userid, $pwdmd5);
- if ($stmt->fetch())
- {
-// if ($pwdmd5 == md5($log["pass"]) || $log["pass"]==null)
- if ($pwdmd5 === md5($log["pass"]) || ($pwdmd5 === null && $log["pass"] === null))
- {
- $_SESSION = array();
- $_SESSION["userid"] = $userid;
-
- // Recht
- $stmt -> free_result(); // wegen weiterer query
- $sql = "SELECT recht_ID FROM user_recht WHERE userid = '$userid'";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- $arecht = array();
- foreach ($res as $row)
- { $arecht[] = $row->recht_ID;}
- if (count($arecht)>0)
- $_SESSION["recht"] = $arecht;
- else
- $_SESSION["recht"] = null;
- }
- else
- {
- $_SESSION["recht"] = null;
-// echo "error_recht: " . $dbc->error . "<br />";
- }
-// print_r($arecht);
-
- // Recht Produkt-Gruppe
- $sql = "SELECT prod_group_ID FROM user_prodgroup WHERE userid = '$userid'";
- if ($re = $dbc -> queryObjectArray($sql))
- {
- $pgrecht = array();
- foreach ($re as $row)
- { $pgrecht[] = $row->prod_group_ID;}
- if (count($pgrecht)>0)
- $_SESSION["prodg"] = $pgrecht;
- else
- $_SESSION["prodg"] = null;
- }
- else
- $_SESSION["prodg"] = null;
- header("Location: $target");
- exit;
- }
- else
- $err2 = "<br /><span class=\"red\">Passwort ist nicht korrekt</span>\n";
- }
- else
- $err1 = "<br /><span class=\"red\">Username ist nicht korrekt</span>\n";
-
- }
- }
- if ($err1 || $err2 || !$log)
- {
- ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
- <head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
-
- <title>Login fhiiqm</title>
- </head>
-
- <body onload="document.flogin.user.focus();">
- <!-- <div class="float-r"><img src="img/document_mark_as_final.png" border="0" alt="Verträge" title="Verträge"/></div> -->
-
- <?php
- include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/login_form.inc.php");
- echo "</body>
- </html>\n";
- }
- }
-
- function duplicate_record ($table, $key_name, $key_value, $auto=1)
- {
- /** dupliziert Datensatz in table
- * Parameter
- * $table Tabellenname
- * $key_name Name ID-Spalte
- * $key_value Wert ID des DSes, der dupliziert werden soll
- * $auto ID ist Auto-Wert
- */
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- global $dbc; // Verbindung ist schon da?
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- // erfragen Namen aller Felder in $table
- $sql = 'SHOW COLUMNS FROM ' . $table . ';';
- $result = $dbc -> queryObjectArray($sql);
-
- // Generieren der INSERT-Abfrage mit allen Feldern ausser ID-Feld
- $query = 'INSERT INTO ' . $table . ' (SELECT ';
-
- foreach ($result as $row)
- {
- if ($row->Field == $key_name && $auto) {
- $query .= 'NULL, ';
- }
- elseif ($row->Field == $key_name && !$auto)
- {$query .= '"'. $key_value . '_COPY", ';}
- else {
- $query .= $row->Field . ', ';
- } // END IF
- }
-
- $query = substr($query, 0, strlen($query) - 2);
- $query .= ' FROM ' . $table . ' WHERE ' . $key_name . ' = "' . $key_value . '")';
-// echo "$query<br />";
- $ret = $dbc -> execute($query);
- if ($ret && $auto)
- {
- // Return new id
- $new_id = $dbc -> insertId();
- return $new_id;
- }
- elseif ($ret && !$auto)
- return $key_value . "_COPY";
- else
- return false;
-/*
- return $query;
-*/
- }
-
- function dbformat_wert($wert)
- {
- /** wandelt Dezimalzahl mit Komma und Tausender-Trennzeichen in Datenbankformat
- *
- * Parameter
- * $wert - zu konvertierende Zahl
- */
-
- if (isset($wert) && $wert<>0)
- {
- if (strpos($wert,',') >0)
- {
- $wert = str_replace(',','.',$wert);
- $aw = explode('.',$wert);
- if (count($aw) > 2) // mit Dezimalpunkt und Tausendertrennzeichen
- {
- for ($i=0; $i<count($aw)-1; $i++)
- {
- $dbw .= $aw[$i];
- }
- $dbw .= "." .$aw[count($aw)-1];
- }
- else // kein Dezimalpunkt,nur Kommastellen
- $dbw = $wert;
- }
- else
- {
- $aw = explode('.',$wert);
- if (count($aw) > 1 && strlen($aw[count($aw)-1]) == 2)
- { // Dezimalpunkt mit 2 Stellen danach (= .nn)
- for ($i=0; $i<count($aw)-1; $i++)
- {
- $dbw .= $aw[$i];
- }
- $dbw .= "." .$aw[count($aw)-1];
- }
- else
- $dbw = str_replace('.','',$wert);
- }
- return $dbw;
- }
- else
- return 0;
- }
-
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 06/2011
+ *
+ *
+ */
+
+ function tab_column($colnum=2,$bez,$sort,$dir,$fcol=0,$fanr=0,$filtb="",$start="",$anzds="25",$id="",$g=0,$tab="",$adr="")
+ {
+ /** beliebige Tabellenspalte mit Sortier-/Filtersymbolen und Links generieren
+ * Parameter
+ * $colnum SpaltenNr. in SELECT-Statement
+ * $bez Spaltenbezeichnung
+ * $sort aktuelle SortspaltenNr.
+ * $dir Sortrichtung (ASC/DESC)
+ * $fcol SpaltenNr. Filter (=0, wenn nicht gefiltert werden soll)
+ * $fanr aktuelle FilterspaltenNr.
+ * $filtb Filterbegriff
+ * $start ab Datensatz $start+1
+ * $anzds Anzahl angezeigter Datensaetze
+ * $id fuer spezielle ID als zusaetzl. Filter (Laser-Log)
+ * $g Gesamtansicht (rag-gefahr-massnahmen-vorsorge)
+ * [$tab fuer tab-basierte Seite
+ * $adr wohin gehen (Teilseite)]
+ */
+
+ if ($colnum == $sort)
+ if ($dir == 'DESC')
+ {
+ $auf = "auf";
+ $ab = "ab_activ";
+ }
+ else
+ {
+ $auf = "auf_activ";
+ $ab = "ab";
+ }
+ else
+ {
+ $auf = "auf";
+ $ab = "ab";
+ }
+
+ if ($bez == "Haus") $tip = "Haus: A, B, BES, C, D, E, F, FAB, HAR, K, L, M, N, P, Q, R, S, T, U"; else $tip = "Filter";
+ if ($tab > "!")
+ {
+ $addr = $adr;
+ $ank = $tab;
+ }
+ else
+ {
+ $addr = $_SERVER['PHP_SELF'];
+ $ank = "";
+ }
+ if ($fcol>0 && $fanr>0) // Filtern nach Spalte moeglich
+ {
+ if ($fcol == $fanr) $filt = "filter_activ"; else $filt = "filter";
+ $filt = " <a href='".$addr."$ank?f=$fcol&s=$sort&d=$dir&st=$start&z=$anzds&i=$id&g=$g'><img src='/fhiiqm/img/$filt.gif' border='0' width='14' hight='11' alt='$tip' title='$tip'></a>";
+ }
+ else
+ $filt="";
+ if ($filtb>'!') $where = "&f=$fanr&b=$filtb&i=$id&g=$g"; else $where="&i=$id&g=$g";
+ echo "<th>$bez <a href='".$addr."$ank?s=$colnum$where&st=$start&z=$anzds'><img src='/fhiiqm/img/$auf.gif' border='0' width='11' hight='11' alt='sort aufsteigend' title='sort aufsteigend'></a>
+ <a href='".$addr."$ank?s=$colnum&d=DESC$where&st=$start&z=$anzds'><img src='/fhiiqm/img/$ab.gif' border='0' width='11' hight='11' alt='sort absteigend' title='sort absteigend'></a>$filt</th>\n";
+ }
+
+ function date_obj($jahr,$mon,$tag)
+ {
+ /** prueft auf valides Datum und erstellt DateTime-Objekt, wenn o.k.
+ * Voraussetzung: Klasse 'DateTime_s' ist included
+ */
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if ($jahr && $mon && $tag)
+ {
+ $dat = $jahr."-".$mon."-".$tag;
+ // Datum valid?
+ if (!$dat = new DateTime_s($dat)) $dat = null;
+ }
+ else
+ $dat = null;
+ return $dat;
+
+ }
+
+ function liste_links($start,$zeil,$anz,$liste)
+ {
+ /** erstellt links zu Seiten einer Liste
+ * Parameter
+ * $start Beginn bei DS $start+1 (1.DS -> $start=0)
+ * $zeil Anzahl Zeilen pro Seite
+ * $anz Anzahl DS gesamt
+ * $liste weitere Inhalte fuer $_GET-Array
+ */
+ $page = 1;
+ while (($page-1)*$zeil < $anz)
+ {
+ $be = ($page-1)*$zeil+1;
+ if (($page-1)*$zeil+$zeil < $anz) $en = ($page-1)*$zeil+$zeil; else $en = $anz;
+ $st = ($page-1)*$zeil;
+ if ($start == $be-1)
+ echo "$be - $en";
+ else
+ echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?st=$st$liste\" class=\"sc\">$be - $en</a>";
+ if (($page-1)*$zeil+$zeil < $anz) echo "<span class=\"sc\"> | </span>";
+ $page++;
+ }
+
+ }
+
+ function login_db($target, $headl="")
+ {
+ /** zeigt Login-Form, prueft userid und passwort, leitet zu gewuenschter Seite weiter
+ * Authentifizierung gegen die Datenbank
+ * Parameter
+ * $target Zieladresse
+ * $headl Ueberschrift Loginform
+ */
+
+ session_start();
+ if ($_SESSION["userid"])
+ {
+ header("Location: $target");
+ exit;
+ }
+
+
+
+ $login = $_POST["login"];
+ $log = $_POST["log"];
+
+ if ($login)
+ {
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $stmt -> prepare("SELECT userid, pwd FROM userweb WHERE userid = ?");
+ $stmt -> bind_param('s',$log["user"]);
+ $result = $stmt -> execute();
+ // $stmt -> store_result(); // wegen weiterer query dies oder $stmt -> free_result();
+ }
+ if ($result)
+ {
+ if ($log["pass"] <= '') $log["pass"] = null;
+ $stmt->bind_result($userid, $pwdmd5);
+ if ($stmt->fetch())
+ {
+// if ($pwdmd5 == md5($log["pass"]) || $log["pass"]==null)
+ if ($pwdmd5 === md5($log["pass"]) || ($pwdmd5 === null && $log["pass"] === null))
+ {
+ $_SESSION = array();
+ $_SESSION["userid"] = $userid;
+
+ // Recht
+ $stmt -> free_result(); // wegen weiterer query
+ $sql = "SELECT recht_ID FROM user_recht WHERE userid = '$userid'";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $arecht = array();
+ foreach ($res as $row)
+ { $arecht[] = $row->recht_ID;}
+ if (count($arecht)>0)
+ $_SESSION["recht"] = $arecht;
+ else
+ $_SESSION["recht"] = null;
+ }
+ else
+ {
+ $_SESSION["recht"] = null;
+// echo "error_recht: " . $dbc->error . "<br />";
+ }
+// print_r($arecht);
+
+ // Recht Produkt-Gruppe
+ $sql = "SELECT prod_group_ID FROM user_prodgroup WHERE userid = '$userid'";
+ if ($re = $dbc -> queryObjectArray($sql))
+ {
+ $pgrecht = array();
+ foreach ($re as $row)
+ { $pgrecht[] = $row->prod_group_ID;}
+ if (count($pgrecht)>0)
+ $_SESSION["prodg"] = $pgrecht;
+ else
+ $_SESSION["prodg"] = null;
+ }
+ else
+ $_SESSION["prodg"] = null;
+ header("Location: $target");
+ exit;
+ }
+ else
+ $err2 = "<br /><span class=\"red\">Passwort ist nicht korrekt</span>\n";
+ }
+ else
+ $err1 = "<br /><span class=\"red\">Username ist nicht korrekt</span>\n";
+
+ }
+ }
+ if ($err1 || $err2 || !$log)
+ {
+ ?>
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+ <head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
+
+ <title>Login fhiiqm</title>
+ </head>
+
+ <body onload="document.flogin.user.focus();">
+ <!-- <div class="float-r"><img src="img/document_mark_as_final.png" border="0" alt="Verträge" title="Verträge"/></div> -->
+
+ <?php
+ include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/login_form.inc.php");
+ echo "</body>
+ </html>\n";
+ }
+ }
+
+ function login($target, $headl="")
+ {
+ /** zeigt Login-Form, prueft userid und passwort, leitet zu gewuenschter Seite weiter
+ * Authentifizierung gegen LDAP
+ * Parameter
+ * $target Zieladresse
+ * $headl Ueberschrift Loginform
+ */
+
+ session_start();
+ if ($_SESSION["userid"])
+ {
+ header("Location: $target");
+ exit;
+ }
+
+
+
+ $login = $_POST["login"];
+ $log = $_POST["log"];
+
+ if ($login)
+ {
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $stmt -> prepare("SELECT userid FROM userweb WHERE userid = ?");
+ $stmt -> bind_param('s',$log["user"]);
+ $result = $stmt -> execute();
+ // $stmt -> store_result(); // wegen weiterer query dies oder $stmt -> free_result();
+ }
+ if ($result)
+ {
+ $ldaphost = "ldap.rz-berlin.mpg.de"; // ldap server
+ $ldapport = 389; // Die Portnummer ldap server
+ $ldapconn = ldap_connect( $ldaphost, $ldapport )
+ or die( "Keine Verbindung zu {$ldaphost} möglich" );
+ $stmt->bind_result($userid);
+ if ($stmt->fetch())
+ {
+ $ldaprdn = "uid=" . $log["user"].",ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ $ldappwd = $log["pass"];
+ ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
+ ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
+ if ($ldapbind = @ldap_bind($ldapconn, $ldaprdn, $ldappwd))
+ {
+ ldap_close($ldapconn);
+ $_SESSION = array();
+ $_SESSION["userid"] = $userid;
+
+ // Recht
+ $stmt -> free_result(); // wegen weiterer query
+ $sql = "SELECT recht_ID FROM user_recht WHERE userid = '$userid'";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ $arecht = array();
+ foreach ($res as $row)
+ { $arecht[] = $row->recht_ID;}
+ if (count($arecht)>0)
+ $_SESSION["recht"] = $arecht;
+ else
+ $_SESSION["recht"] = null;
+ }
+ else
+ {
+ $_SESSION["recht"] = null;
+// echo "error_recht: " . $dbc->error . "<br />";
+ }
+// print_r($arecht);
+
+ // Recht Produkt-Gruppe
+ $sql = "SELECT prod_group_ID FROM user_prodgroup WHERE userid = '$userid'";
+ if ($re = $dbc -> queryObjectArray($sql))
+ {
+ $pgrecht = array();
+ foreach ($re as $row)
+ { $pgrecht[] = $row->prod_group_ID;}
+ if (count($pgrecht)>0)
+ $_SESSION["prodg"] = $pgrecht;
+ else
+ $_SESSION["prodg"] = null;
+ }
+ else
+ $_SESSION["prodg"] = null;
+ header("Location: $target");
+ exit;
+ }
+ else
+ $err2 = "<br /><span class=\"red\">Passwort ist nicht korrekt</span>\n";
+ }
+ else
+ $err1 = "<br /><span class=\"red\">Username ist nicht korrekt</span>\n";
+
+ }
+ }
+ if ($err1 || $err2 || !$log)
+ {
+ ?>
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+ <head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
+
+ <title>Login fhiiqm</title>
+ </head>
+
+ <body onload="document.flogin.user.focus();">
+ <!-- <div class="float-r"><img src="img/document_mark_as_final.png" border="0" alt="Verträge" title="Verträge"/></div> -->
+
+ <?php
+ include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/login_form.inc.php");
+ echo "</body>
+ </html>\n";
+ }
+ }
+
+ function duplicate_record ($table, $key_name, $key_value, $auto=1)
+ {
+ /** dupliziert Datensatz in table
+ * Parameter
+ * $table Tabellenname
+ * $key_name Name ID-Spalte
+ * $key_value Wert ID des DSes, der dupliziert werden soll
+ * $auto ID ist Auto-Wert
+ */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ global $dbc; // Verbindung ist schon da?
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ // erfragen Namen aller Felder in $table
+ $sql = 'SHOW COLUMNS FROM ' . $table . ';';
+ $result = $dbc -> queryObjectArray($sql);
+
+ // Generieren der INSERT-Abfrage mit allen Feldern ausser ID-Feld
+ $query = 'INSERT INTO ' . $table . ' (SELECT ';
+
+ foreach ($result as $row)
+ {
+ if ($row->Field == $key_name && $auto) {
+ $query .= 'NULL, ';
+ }
+ elseif ($row->Field == $key_name && !$auto)
+ {$query .= '"'. $key_value . '_COPY", ';}
+ else {
+ $query .= $row->Field . ', ';
+ } // END IF
+ }
+
+ $query = substr($query, 0, strlen($query) - 2);
+ $query .= ' FROM ' . $table . ' WHERE ' . $key_name . ' = "' . $key_value . '")';
+// echo "$query<br />";
+ $ret = $dbc -> execute($query);
+ if ($ret && $auto)
+ {
+ // Return new id
+ $new_id = $dbc -> insertId();
+ return $new_id;
+ }
+ elseif ($ret && !$auto)
+ return $key_value . "_COPY";
+ else
+ return false;
+/*
+ return $query;
+*/
+ }
+
+ function dbformat_wert($wert)
+ {
+ /** wandelt Dezimalzahl mit Komma und Tausender-Trennzeichen in Datenbankformat
+ *
+ * Parameter
+ * $wert - zu konvertierende Zahl
+ */
+
+ if (isset($wert) && $wert<>0)
+ {
+ if (strpos($wert,',') >0)
+ {
+ $wert = str_replace(',','.',$wert);
+ $aw = explode('.',$wert);
+ if (count($aw) > 2) // mit Dezimalpunkt und Tausendertrennzeichen
+ {
+ for ($i=0; $i<count($aw)-1; $i++)
+ {
+ $dbw .= $aw[$i];
+ }
+ $dbw .= "." .$aw[count($aw)-1];
+ }
+ else // kein Dezimalpunkt,nur Kommastellen
+ $dbw = $wert;
+ }
+ else
+ {
+ $aw = explode('.',$wert);
+ if (count($aw) > 1 && strlen($aw[count($aw)-1]) == 2)
+ { // Dezimalpunkt mit 2 Stellen danach (= .nn)
+ for ($i=0; $i<count($aw)-1; $i++)
+ {
+ $dbw .= $aw[$i];
+ }
+ $dbw .= "." .$aw[count($aw)-1];
+ }
+ else
+ $dbw = str_replace('.','',$wert);
+ }
+ return $dbw;
+ }
+ else
+ return 0;
+ }
+
+ function ldap_replace($sn,$gn,$title,$roomnr,$tel,$mail,$dep,$ag)
+ {
+ /** ersetzt bestehende Eintraege von LDAP-Objektklassen
+ * erstellt weiteres Attribut zu Telefon und Arbeitsgruppe, falls erforderlich
+ *
+ * Parameter
+ * $sn
+ * $gn - givenName
+ * $title
+ * $roomnr - roomNumber
+ * $tel[] - telephonNumber
+ * $mail
+ * $dep - departmentNumber
+ * $ag[] - physicalDeliveryOfficeName
+ * */
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/conf.inc.php");
+ $ldaphost = "ldap.rz-berlin.mpg.de"; // Ihr ldap servers
+ $ldapport = 389; // Die Portnummer ihres ldap servers
+ global $ldapconn;
+ global $ldapbd;
+
+ // Verbindung zu LDAP
+ if (!$ldapconn) $ldapconn = ldap_connect( $ldaphost, $ldapport );
+ ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
+ ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
+ $ldapbd = @ldap_bind($ldapconn, $ldaprdn, $ldappwd);
+// echo "ldapbd=$ldapbd, ldaprdn=$ldaprdn<br />";
+
+ if ($ldapbd)
+ {
+ $base="ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ $uid = ldap_search_uid($sn,$gn);
+ //Parameter abfragen
+ if ($uid)
+ {
+ $dn = "uid=".$uid .",ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+// echo "dn-mod = $dn<br />";
+ $su = array("ä","ö","ü","ß","Ä","Ö","Ü");
+ $rp = array("ae","oe","ue","ss","Ae","Oe","Ue");
+ $gn = str_replace($su,$rp,$gn);
+ $sn = str_replace($su,$rp,$sn);
+ $entry["sn"] = $sn;
+ $entry["givenName"] = $gn;
+ if (isset($title) && $title) $entry["title"] = $title;
+ if (isset($roomnr) && $roomnr) $entry["roomNumber"] = $roomnr;
+ if (isset($mail) && $mail) $entry["mail"] = $mail;
+ if (isset($dep) && $dep) $entry["departmentNumber"] = $dep;
+// print_r ($entry); echo "ldapconn=$ldapconn: single<br />";
+ $result1 = ldap_mod_replace($ldapconn, $dn, $entry);
+ if (!$result1)
+ {
+ printf("LDAP-Fehlernummer replace: %s<br>\n", ldap_errno($ldapconn));
+ printf("LDAP-Fehler replace: %s<br>\n", ldap_error($ldapconn));
+ }
+
+ if (is_array($tel) && $tel)
+ {
+ $entry2["telephoneNumber"] = array();
+ $result = ldap_mod_del($ldapconn, $dn, $entry2);
+ if (!$result)
+ {
+ printf("LDAP-Fehlernummer del1: %s<br>\n", ldap_errno($ldapconn));
+ printf("LDAP-Fehler del1: %s<br>\n", ldap_error($ldapconn));
+ }
+ foreach ($tel as $telf)
+ if ($telf > "!") $entry2["telephoneNumber"][] = $telf;
+ }
+ if (is_array($ag) && $ag)
+ {
+ $entry3["physicalDeliveryOfficeName"] = array();
+ $result = ldap_mod_del($ldapconn, $dn, $entry3);
+ if (!$result)
+ {
+ printf("LDAP-Fehlernummer del2: %s<br>\n", ldap_errno($ldapconn));
+ printf("LDAP-Fehler del2: %s<br>\n", ldap_error($ldapconn));
+ }
+ foreach ($ag as $agr)
+ if ($agr > "!") $entry2["physicalDeliveryOfficeName"][] = $agr;
+ }
+// print_r ($entry2); echo ": multiple<br />";
+ $result2 = ldap_mod_add($ldapconn, $dn, $entry2);
+ if (!$result2)
+ {
+ printf("LDAP-Fehlernummer add: %s<br>\n", ldap_errno($ldapconn));
+ printf("LDAP-Fehler add: %s<br>\n", ldap_error($ldapconn));
+ }
+
+ $filter = "(uid=".$uid.")";
+ $afields = array ("uid","cn","givenName","sn","title","userPassword","mail","departmentNumber","telephoneNumber","roomNumber","physicalDeliveryOfficeName");
+ if (!($search=@ldap_search($ldapconn,$base,$filter,$afields))) die("Unable to search ldap server");
+ echo "<div align = 'center'>LDAP-Eintrag nach Änderung 1<br />";
+ $info = ldap_get_entries($ldapconn, $search);
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+// print_r ($info); echo "<br /><br />";
+
+ echo "<table border='0' cellspacing='2' cellpadding='2'>\n
+ <tr bgcolor='#68ACBF'><th>sn</th><th>givenName</th><th>cn</th><th>title</th><th>uid</th><th>userPassword</th><th>mail</th>
+ <th>departmentNumber</th><th>telephoneNumber</th><th>roomNumber</th><th>physicalDeliveryOfficeName</th></tr>\n";
+ for ($i=0; $i<$info["count"]; $i++)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='" . $bg . "'>";
+ echo "<td>". $info[$i]["sn"][0]."</td>";
+ echo "<td>". $info[$i]["givenname"][0]."</td>";
+ echo "<td>". $info[$i]["cn"][0]."</td>";
+ echo "<td>". $info[$i]["title"][0]."</td>";
+ echo "<td>". $info[$i]["uid"][0]."</td>";
+ echo "<td>". $info[$i]["userpassword"][0]."</td>";
+ echo "<td>". $info[$i]["mail"][0]."</td>";
+ echo "<td>". $info[$i]["departmentnumber"][0]."</td>";
+ $stel = "";
+ foreach ($info[$i]["telephonenumber"] as $tel)
+ $stel .= $tel . ", ";
+ echo "<td>". substr($stel,strpos($stel,",")+1,strlen(substr($stel,strpos($stel,",")+1))-2) . "</td>";
+ echo "<td>". $info[$i]["roomnumber"][0]."</td>";
+ $sag = "";
+ foreach ($info[$i]["physicaldeliveryofficename"] as $ag)
+ $sag .= $ag . ", ";
+ echo "<td>". substr($sag,strpos($sag,",")+1,strlen(substr($sag,strpos($sag,",")+1))-2) . "</td>";
+ echo "</tr>\n";
+ }
+ echo "</table>";
+ echo "</div>\n";
+
+ if (!$result1 || !$result2) return 0; else return 1;
+ }
+ else
+ {
+ echo "Nutzer '".$gn ." " . $sn ."' konnte nicht identifiziert werden.";
+ return 0;
+ }
+ }
+ }
+ function ldap_search_uid($sn,$gn)
+ {
+ /** Suchrt uid des gegebenen Nutzers
+ *
+ * Parameter
+ * $sn
+ * $gn - givenName
+ * */
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/conf.inc.php");
+ $ldaphost = "ldap.rz-berlin.mpg.de"; // Ihr ldap servers
+ $ldapport = 389; // Die Portnummer ihres ldap servers
+
+ // Verbindung zu LDAP
+ if (!$ldapconn) $ldapconn = ldap_connect( $ldaphost, $ldapport );
+ ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
+ ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
+ if (!$ldapbd) $ldapbd = @ldap_bind($ldapconn, $ldaprdn, $ldappwd);
+
+ if ($ldapbd)
+ {
+ $base="ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ $su = array("ä","ö","ü","ß","Ä","Ö","Ü");
+ $rp = array("ae","oe","ue","ss","Ae","Oe","Ue");
+ $afields = array ("uid");
+ $filter = "(cn=" . $gn . " " . $sn .")";
+ $search=@ldap_search($ldapconn,$base,$filter,$afields);
+ if (!ldap_count_entries($ldapconn,$search))
+ {
+ $gnr = str_replace($su,$rp,$gn);
+ $snr = str_replace($su,$rp,$sn);
+ $filter = "(cn=" . $gnr . " " . $snr .")";
+ $search=@ldap_search($ldapconn,$base,$filter,$afields);
+ }
+ if (!ldap_count_entries($ldapconn,$search))
+
+ {
+ $gn = utf8_encode($gn);
+ $sn = utf8_encode($sn);
+ $filter = "(cn=" . $gn . " " . $sn .")";
+ $search=@ldap_search($ldapconn,$base,$filter,$afields);
+ }
+ if (ldap_count_entries($ldapconn,$search))
+ {
+ $info = ldap_get_entries($ldapconn, $search);
+ for ($i=0; $i<$info["count"]; $i++)
+ $uid = $info[$i]["uid"][0];
+ }
+ echo " $filter<br />";
+ if (isset($uid) && $uid) return $uid;
+ else return null;
+ }
+ }
?>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/inc/ma_ldap_ac.inc.php Thu Sep 12 09:04:56 2013 +0200
@@ -0,0 +1,63 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 08/2013
+ *
+ * Autocomplete neue Mitarbeiter aus LDAP
+ */
+
+// header('Content-type: text/html; charset="iso-8859-1',true); //wg. jquery ui autocomplete
+ header('Content-type: text/html; charset="utf-8',true); //wg. jquery ui autocomplete und LDAP(utf-8 codiert)
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ $q = strtolower($_GET["term"]); // wird in jquery in 'term' uebergeben, term UTF-8 codiert
+
+ $ldaphost = "ldap.rz-berlin.mpg.de"; // Ihr ldap servers
+ $ldapport = 389; // Die Portnummer ihres ldap servers
+ // Verbindung zu LDAP
+ $ldapconn = ldap_connect( $ldaphost, $ldapport )
+ or die( "Keine Verbindung zu {$ldaphost} möglich" );
+
+ if ($ldapconn)
+ {
+ $ldaprdn = "ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
+ ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
+ $ldapbind = @ldap_bind($ldapconn);
+ // $ldapbind = @ldap_bind($ldapconn);
+
+ $base="ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ if ($ldapbind)
+ {
+ $filter = "(sn=$q*)";
+ $afields = array ("uid","cn","givenName","sn","title","mail");
+ $afieldsort = array ("uid","givenName","sn");
+ // search active directory
+ if (!($search=@ldap_search($ldapconn,$base,$filter,$afields))) {
+ die("Unable to search ldap server");
+ }
+ foreach ($afieldsort as $esort)
+ {
+ if (in_array($esort, $afields)) { // making sure we don't accidentally try to sort against an inexisting field
+ ldap_sort($ldapconn, $search, $esort);
+ }
+ }
+ // Find out what we can see
+ $number_returned = ldap_count_entries($ldapconn,$search);
+ $info = ldap_get_entries($ldapconn, $search);
+ if ($number_returned)
+ {
+ for ($i=0; $i<$info["count"]; $i++)
+ {
+ $clist[] = "{\"label\": \"" . $info[$i]["sn"][0] . ", " . $info[$i]["givenname"][0]. "; " . $info[$i]["mail"][0]. "; " . $info[$i]["uid"][0].
+ "\",\"value\": \"" . $info[$i]["sn"][0].
+ "\",\"id\": \"" . $info[$i]["uid"][0]. "\",\"id2\": \"" . $info[$i]["givenname"][0]. "\",\"id3\": \"" . $info[$i]["mail"][0] . "\"}";
+ }
+ echo "[" . implode(", ", $clist) . "]"; // Format, das jquery source erwartet
+ }
+
+ }
+ }
+
+?>
\ No newline at end of file
--- a/fhiiqm/info_betrst_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/info_betrst_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,573 +1,578 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 07/2012, 08/2012
- *
- * INSERT,UPDATE Informationen Betriebsstoerung, Betriebsanweisung
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- $ityp = $_GET["t"]; // t=7 - Betriebsstoerung, t=8 - Betriebsanweisung
- if ($ityp == 71) $repr = "dd"; else $repr = "i";
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array($repr."r",$_SESSION["recht"]) && !in_array($repr."e",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-
- $infid = $_GET["i"];
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
-
- $del = $_POST["del"];
- $sub = $_POST["eintragen"];
- $dup = $_POST["dup"];
- if (!$dup) $dup = $_GET["dp"];
- $copy = $_GET["c"];
- $inf = $_POST["inf"];
- $ok = $_POST["ok"];
- if (!$inf["okn"]) $ok = false;
- $duptext="";
-
- switch ($ityp)
- {
- case 7: $titel = "Betriebsstörung";
- break;
- case 71: $titel = "Betriebsstörung dezentrale Technik";
- break;
- case 8: $titel = "Betriebsanweisung";
- break;
- case 81: $titel = "Betriebsanweisung Anlage";
- break;
- }
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- $dbc = new dbconnection();
-
- if ($dup)
- { // Info duplizieren
- $tab = "Info";
- $key = "info_ID";
- $val = $infid;
-// $ret=1;
- $ret = duplicate_record ($tab, $key, $val);
- if ($ret)
- {
- $infid_new=$ret;
- // Infofilename loeschen
- $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
- $retf = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
-
- // duplizieren Produkte
- $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- $retp = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
-
- // duplizieren Adressat
- $sql = "INSERT INTO Info_Funktion SELECT $infid_new,fkt_ID FROM Info_Funktion WHERE info_ID = $infid";
- $reta = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
-
- // duplizieren Verantwortliche
- $retv=1;
-/* $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
- $retv = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
-*/
- if ($ret && $retf && $retp && $reta && $retv)
- {
- $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&t=$ityp&$getp";
- header("Location: $addr");
- exit;
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
-
- <?php echo "<title>Edit $titel</title>\n"; ?>
-</head>
-
-<body>
-
- <script>
- <!--
- function split( val ) {
- return val.split( /;\s*/ );
- }
- function extractLast( term ) {
- return split( term ).pop();
- }
-// $(document).ready(function() {
- $(function() {
- $("#titel").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
- $("#cdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#vdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#bdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("input[id='persknr']").addClass("long20");
- $("input[id='cdat']").addClass("long10");
- $("input[id='vdat']").addClass("long10");
- $("input[id='bdat']").addClass("long10");
- });
- // Adressat mehrfach erstellen
- var counter = 0;
- var limit = 99;
- var arr = new Array();
- function addInput(divName){
- if (counter == limit) {
- alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
- }
- else {
- var newdiv = document.createElement('div');
- var count;
- var opt="<option value='-1'></option>";
- for (var key in arr)
- {
- opt = opt.concat("<option value='",key,"'>",key, " - ",arr[key],"</option>\n" );
- }
- opt += "</select>\n";
- newdiv.innerHTML += "<select name='inf[adr][]'>"+opt;
- document.getElementById(divName).appendChild(newdiv);
- counter++;
- }
- }
- function delInput(divId){
- var kn = document.getElementById(divId);
- while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SELECT" && kn.lastChild.nodeName != "A")
- {
- // alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
- var knc = kn.lastChild;
- document.getElementById(divId).removeChild(knc);
- }
- if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
- }
- function addInputf(divId,anz){
- var cdiv = document.createElement('div');
- var idl = "cbl_" + anz;
- cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
- cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
- cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
- //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
- cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
- cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
- cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
- document.getElementById(divId).appendChild(cdiv);
- var delcb = document.getElementById('del');
- delcb.id = "del_" + anz;
- delcb.style.display = 'none';
- var lcb = document.getElementById('lb');
- lcb.id = "lb_" + anz;
- lcb.setAttribute("for", delcb.id);
- lcb.style.display = 'none';
- counter++;
- }
- function markdelInput(divId,anz){
- for (i=1; i<anz; i++)
- {
- var id = "del_" + i;
- var delcb = document.getElementById(id);
- delcb.style.display = 'inline';
- var idl = "lb_" + i;
- var lcb = document.getElementById(idl);
- lcb.style.display = 'inline';
- }
- }
- -->
- </script>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
-
-//print_r($inf); echo "<br />ok = $ok, sub = $sub<br /><br />";
-//print_r($_FILES["ifile"]); echo "<br /><br />";
-
- echo "<div align='center'>";
- if ($infid) $text = "editieren"; else $text = "erfassen";
- if ($copy) $duptext = " (Kopie)";
- echo "<h3>$titel $text$duptext</h3>";
-
- echo "</div>\n";
-
- //Filename wenn Upload?
- if (isset($_FILES["ifile"]["error"]))
- foreach ($_FILES["ifile"]["error"] as $key => $err)
- if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
-
- if (!$ok || (!$sub && !$del && !$dup))
- {
- if ($infid && (!$sub || !$del) && !isset($inf))
- { // update
- $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
- i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,
- CONCAT(nachname,', ',vorname) AS aname, i.raum_ID, i.geb_ID
- FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
- ON i.persknr=m.persknr LEFT OUTER JOIN Raum r
- ON i.raum_ID = r.raum_ID
- WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["infid"] = $infid;
- $inf["iname"] = $row->info_name_s;
- $inf["ilong"] = $row->info_name_l;
- $inf["cdat"] = $row->info_date;
- $inf["vdat"] = $row->info_valid_from;
- $inf["bdat"] = $row->info_valid_to;
- $inf["ityp"] = $row->infotyp_ID;
- $inf["persknr"] = $row->aname;
- $inf["pers"] = $row->persknr;
- $inf["infrel"] = $row->info_rel_ID;
-// $inf["ifname"] = $row->info_file;
- $inf["lang"] = $row->lang;
- $inf["sort"] = $row->info_sort;
- $inf["raum"] = $row->raum_ID;
- $inf["geb"] = $row->geb_ID;
- $inf["fg"] = $row->info_freigabe_ID;
- }
- }
- // Produkt
- $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf['prid'][] = $row->produkt_ID;
- }
- }
- if (substr($ityp,0,1) !=8)
- {
- // Adressat
- $sql = "SELECT i.fkt_ID, fkt_bez FROM fhiiqm.Info_Funktion i
- LEFT OUTER JOIN Funktion f ON i.fkt_ID=f.fkt_ID WHERE info_id = $infid";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- $inf["adr"][] = $row->fkt_ID;
- }
- }
- if ($ityp == 81) // Betriebsanweisung Anlage
- {
- $sql = "SELECT al_ID FROM Info_Anlage WHERE info_ID = $infid";
- $inf["anl"] = $dbc -> querySingleItem($sql);
- }
-
- // Dokumente
- $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["ifname"][] = $row->if_filename;
- $inf["swort"][] = $row->if_schlagwort;
- }
- }
-// print_r($inf); echo "<br /><br />";
-
- }
- include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_betrst_form.inc.php");
-/*
- if ($sub)
- {
- echo
- "<tr>
- <td>Upload Infodokument </td>
- <td><input type=\"file\" name=\"ifile\" size=\"50\" maxlength=\"50\" value=\"" .
- $_FILES["ifile"]["name"] . "\"/></td>
- </tr>";
-
- }
-*/
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?";
- elseif ($del)
- $frage = "Information wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo " /></td>\n</tr>\n";
- }
- if (!is_null($_SESSION["recht"]) && in_array($repr."e",$_SESSION["recht"]))
- {
- echo "
- <tr><td> </td>\n
- <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
- if ($infid)
- {
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
- }
- echo "</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
- echo "</form>\n";
- }
- else
- {
- echo "<div align='center'>\n";
-
- if ($del)
- { // loescht auch m:n - Tabellen wegen Loeschweitergabe
- $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
- $retdi = $dbc -> execute($sql);
- if ($retdi)
- {
- // alte Namen Infodocumente
- $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($res = $dbc -> queryObjectArray($sql))
- foreach ($res as $row)
- $ifile_old[] = $row->if_filename;
-
- include_once ("inc/file_upload.inc.php");
- foreach ($inf['ifname'] as $key => $filename)
- $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
- if ($retdf) echo "<p class='green'><b>Infodokumente zu ID '$infid' wurde gelöscht.</b></p>\n";
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen geloeschter Infodaten
- echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
- include ("inc/info_dat_show.inc.php");
- }
- else
- {
- echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
- echo "sql = $sql<br />";
- echo "error DELETE: " . $dbc->error . "<br />";
- }
- }
- else //INSERT oder UPDATE
- {
- //daten speichern
- $inf["iname"] = substr($inf["iname"],0,300);
- $inf["ilong"] = substr($inf["ilong"],0,8000);
- $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
- if ($ityp == 8) $inf["sort"] = null;
- if ($inf["ityp"] == -1) $inf["ityp"] = null;
-
- if ($inf["persknr"] < "!") $inf["pers"] = null;
- if ($inf["infrel"] == -1) $inf["infrel"] = null;
- if ($inf["lang"] == -1) $inf["lang"] = null;
- if ($inf["ifname"] < "!") $inf["ifname"] = null;
- if ($inf["raum"] == -1) $inf["raum"] = null;
- if ($inf["geb"] == -1) $inf["geb"] = null;
-
- if ($inf["cdat"] == "") $inf["cdat"] = null;
- if ($inf["vdat"] == "") $inf["vdat"] = null;
- if ($inf["bdat"] == "") $inf["bdat"] = null;
- if ($inf["fg"] == -1) $inf["fg"] = null;
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($infid)
- { //UPDATE
- // alter Name Infofile
-// $sql = "SELECT info_file FROM Info WHERE info_ID = $infid";
-// $ifile_old = $dbc -> querySingleItem($sql);
-
- $stmt -> prepare("UPDATE fhiiqm.Info SET
- info_name_s = ?,
- info_name_l = ?,
- info_date = ?,
- info_valid_from = ?,
- info_valid_to = ?,
- infotyp_ID = ?,
- persknr = ?,
- lang = ?,
- info_freigabe_ID = ?,
- info_sort = ?,
- info_rel_ID = ?,
- raum_ID = ?,
- geb_ID = ? WHERE info_ID = $infid");
- $stmt -> bind_param('sssssiisisiis',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$inf["raum"],$inf["geb"]);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
- }
- else
- { //INSERT
-// print_r($inf); echo "<br /><br />";
- $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
- infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,raum_ID,geb_ID) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)");
- $stmt -> bind_param('sssssiisisiis', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$inf["raum"],$inf["geb"]);
- $result = $stmt -> execute();
-
- if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
- if ($result)
- { // INSERT o.k.
- // info_ID ermitteln
- $infid = $dbc -> insertId();
- }
- }
- } // stmt-Objekt
- if ($result)
- {
-
- // upload Files
- if ($infid) include ("inc/info_file.inc.php");
- // n:m Tabellen INSERT
- if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
-/*
- if ($_FILES["ifile"]["error"] == 1 || $_FILES["ifile"]["error"] == 2)
- {
- echo "<p class='red'><b>Uploadfile zu ID '$infid' > 32MByte!.</b></p>\n";
- $retf=0; $reti=0;
- }
- elseif (is_uploaded_file($_FILES["ifile"]["tmp_name"]) && isset($_FILES["ifile"]["name"]) && $_FILES["ifile"]["name"] )
- {
- include ("inc/file_upload.inc.php");
- $fname = gen_filename($inf['ifname'],"ifile",$infid);
- $retdf = mod_file("/var/www/fhiiqm/infos",$infid,"","del"); // Loeschen alte Datei
- $retf = upload("ifile", $fname, $infid, "infos"); // Datei prüfen und in Dokumentenverzeichnis verschieben
-
- if ($retf)
- { // upload o.k.
- //UPDATE des Filenamens
- $sql = "UPDATE Info SET info_file = '" . $infid . "_" . $fname ."' WHERE info_ID=$infid";
- $reti=$dbc->execute($sql);
- if (!$reti)
- echo $dbc -> error . "<br>\n";
- }
-
- }
- else
- {// nur Aenderung Dateiname
- if ($inf["ifname"]) // Dateiname vergeben
- {
- include ("inc/file_upload.inc.php");
- $fname = gen_filename($inf["ifname"],$ifile_old,$infid,0);
- $len = strlen($infid)+1;
- if (substr($fname,0,$len) != "$infid" . "_") $fname = $infid . "_" . $fname;
- if ($inf["ifname"] != $ifile_old)
- {
- $retf = mod_file("/var/www/fhiiqm/infos",$infid,$fname,"upd"); // Umbenennen alte Datei
- if ($retf)
- {
- $sql = "UPDATE Info SET info_file = '" . $fname . "' WHERE info_ID=$infid";
- $reti=$dbc->execute($sql);
- if (!$reti)
- echo $dbc -> error . "<br>\n";
- if (substr($fname,0,$len) == "$infid" . "_") $fname = substr($fname,$len,50);
- }
-
- }
- else
- {
- //kein Upload, keine Dateinamenaenderung
- if (substr($fname,0,$len) == "$infid" . "_") $fname = substr($fname,$len,50);
- $retf=1; $reti=1;
- }
- }
- else // kein Dateiname angegeben
- {
- include ("inc/file_upload.inc.php");
- $retf=1; $reti=1;
- if ($ifile_old)
- { // Loeschen alte Datei
- $retf = mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old);
- if ($retf)
- {
- $sql = "UPDATE Info SET info_file = null WHERE info_ID=$infid";
- $reti=$dbc->execute($sql);
- if (!$reti)
- echo $dbc -> error . "<br>\n";
- }
- }
- }
- }
-*/
- }
- if ($result && $ret && $retf && $reta && $retp && $retv && $retl) // INSERT/UPDATE Info
- {
- //Eingabe Daten, Upload File erfolgreich
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen gespeicherte Infodaten
- include ("inc/info_dat_show.inc.php");
- }
- } // INSERT / UPDATE
- echo "</div>";
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
- echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."?t=" . $ityp ."\" target=\"_self\" title=\"Info erfassen\">Weitere $titel erfassen</a></p>\n";
-
- } // Form o.k. und submit
-?>
-
-</body>
-</html>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 07/2012, 08/2012
+ *
+ * INSERT,UPDATE Informationen Betriebsstoerung, Betriebsanweisung
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ $ityp = $_GET["t"]; // t=7 - Betriebsstoerung, t=8 - Betriebsanweisung
+ if ($ityp == 71) $repr = "dd"; else $repr = "i";
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array($repr."r",$_SESSION["recht"]) && !in_array($repr."e",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+
+ $infid = $_GET["i"];
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
+
+ $del = $_POST["del"];
+ $sub = $_POST["eintragen"];
+ $dup = $_POST["dup"];
+ if (!$dup) $dup = $_GET["dp"];
+ $copy = $_GET["c"];
+ $inf = $_POST["inf"];
+ $ok = $_POST["ok"];
+ if (!$inf["okn"]) $ok = false;
+ $duptext="";
+
+ switch ($ityp)
+ {
+ case 7: $titel = "Betriebsstörung";
+ break;
+ case 71: $titel = "Betriebsstörung dezentrale Technik";
+ break;
+ case 8: $titel = "Betriebsanweisung";
+ break;
+ case 81: $titel = "Betriebsanweisung Anlage";
+ break;
+ }
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ $dbc = new dbconnection();
+
+ if ($dup)
+ { // Info duplizieren
+ $tab = "Info";
+ $key = "info_ID";
+ $val = $infid;
+// $ret=1;
+ $ret = duplicate_record ($tab, $key, $val);
+ if ($ret)
+ {
+ $infid_new=$ret;
+ // Infofilename loeschen
+ $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
+ $retf = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
+
+ // duplizieren Produkte
+ $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ $retp = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
+
+ // duplizieren Adressat
+ $sql = "INSERT INTO Info_Funktion SELECT $infid_new,fkt_ID FROM Info_Funktion WHERE info_ID = $infid";
+ $reta = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
+
+ // duplizieren Verantwortliche
+ $retv=1;
+/* $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
+ $retv = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
+*/
+ if ($ret && $retf && $retp && $reta && $retv)
+ {
+ $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&t=$ityp&$getp";
+ header("Location: $addr");
+ exit;
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+
+ <?php echo "<title>Edit $titel</title>\n"; ?>
+</head>
+
+<body>
+
+ <script>
+ <!--
+ function split( val ) {
+ return val.split( /;\s*/ );
+ }
+ function extractLast( term ) {
+ return split( term ).pop();
+ }
+// $(document).ready(function() {
+ $(function() {
+ $("#titel").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("#cdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#vdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#bdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("input[id='persknr']").addClass("long20");
+ $("input[id='cdat']").addClass("long10");
+ $("input[id='vdat']").addClass("long10");
+ $("input[id='bdat']").addClass("long10");
+ });
+ // Adressat mehrfach erstellen
+ var counter = 0;
+ var limit = 99;
+ var arr = new Array();
+ function addInput(divName){
+ if (counter == limit) {
+ alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
+ }
+ else {
+ var newdiv = document.createElement('div');
+ var count;
+ var opt="<option value='-1'></option>";
+ for (var key in arr)
+ {
+ opt = opt.concat("<option value='",key,"'>",key, " - ",arr[key],"</option>\n" );
+ }
+ opt += "</select>\n";
+ newdiv.innerHTML += "<select name='inf[adr][]'>"+opt;
+ document.getElementById(divName).appendChild(newdiv);
+ counter++;
+ }
+ }
+ function delInput(divId){
+ var kn = document.getElementById(divId);
+ while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SELECT" && kn.lastChild.nodeName != "A")
+ {
+ // alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
+ var knc = kn.lastChild;
+ document.getElementById(divId).removeChild(knc);
+ }
+ if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
+ }
+ function addInputf(divId,anz){
+ var cdiv = document.createElement('div');
+ var idl = "cbl_" + anz;
+ cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
+ cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
+ cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
+ //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
+ cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
+ cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
+ cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
+ document.getElementById(divId).appendChild(cdiv);
+ var delcb = document.getElementById('del');
+ delcb.id = "del_" + anz;
+ delcb.style.display = 'none';
+ var lcb = document.getElementById('lb');
+ lcb.id = "lb_" + anz;
+ lcb.setAttribute("for", delcb.id);
+ lcb.style.display = 'none';
+ counter++;
+ }
+ function markdelInput(divId,anz){
+ for (i=1; i<anz; i++)
+ {
+ var id = "del_" + i;
+ var delcb = document.getElementById(id);
+ delcb.style.display = 'inline';
+ var idl = "lb_" + i;
+ var lcb = document.getElementById(idl);
+ lcb.style.display = 'inline';
+ }
+ }
+ -->
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
+
+//print_r($inf); echo "<br />ok = $ok, sub = $sub<br /><br />";
+//print_r($_FILES["ifile"]); echo "<br /><br />";
+
+ echo "<div align='center'>";
+ if ($infid) $text = "editieren"; else $text = "erfassen";
+ if ($copy) $duptext = " (Kopie)";
+ echo "<h3>$titel $text$duptext</h3>";
+
+ echo "</div>\n";
+
+ //Filename wenn Upload?
+ if (isset($_FILES["ifile"]["error"]))
+ foreach ($_FILES["ifile"]["error"] as $key => $err)
+ if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
+
+ if (!$ok || (!$sub && !$del && !$dup))
+ {
+ if ($infid && (!$sub || !$del) && !isset($inf))
+ { // update
+ $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
+ i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,
+ CONCAT(nachname,', ',vorname) AS aname, i.raum_ID, i.geb_ID, i.timestamp,i.userid
+ FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
+ ON i.persknr=m.persknr LEFT OUTER JOIN Raum r
+ ON i.raum_ID = r.raum_ID
+ WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["infid"] = $infid;
+ $inf["iname"] = $row->info_name_s;
+ $inf["ilong"] = $row->info_name_l;
+ $inf["cdat"] = $row->info_date;
+ $inf["vdat"] = $row->info_valid_from;
+ $inf["bdat"] = $row->info_valid_to;
+ $inf["ityp"] = $row->infotyp_ID;
+ $inf["persknr"] = $row->aname;
+ $inf["pers"] = $row->persknr;
+ $inf["infrel"] = $row->info_rel_ID;
+// $inf["ifname"] = $row->info_file;
+ $inf["lang"] = $row->lang;
+ $inf["sort"] = $row->info_sort;
+ $inf["raum"] = $row->raum_ID;
+ $inf["geb"] = $row->geb_ID;
+ $inf["fg"] = $row->info_freigabe_ID;
+ $inf["tstmp"] = $row->timestamp;
+ $inf["uid"] = $row->userid;
+ }
+ }
+ // Produkt
+ $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf['prid'][] = $row->produkt_ID;
+ }
+ }
+ if (substr($ityp,0,1) !=8)
+ {
+ // Adressat
+ $sql = "SELECT i.fkt_ID, fkt_bez FROM fhiiqm.Info_Funktion i
+ LEFT OUTER JOIN Funktion f ON i.fkt_ID=f.fkt_ID WHERE info_id = $infid";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ $inf["adr"][] = $row->fkt_ID;
+ }
+ }
+ if ($ityp == 81) // Betriebsanweisung Anlage
+ {
+ $sql = "SELECT al_ID FROM Info_Anlage WHERE info_ID = $infid";
+ $inf["anl"] = $dbc -> querySingleItem($sql);
+ }
+
+ // Dokumente
+ $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["ifname"][] = $row->if_filename;
+ $inf["swort"][] = $row->if_schlagwort;
+ }
+ }
+// print_r($inf); echo "<br /><br />";
+
+ }
+ include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_betrst_form.inc.php");
+/*
+ if ($sub)
+ {
+ echo
+ "<tr>
+ <td>Upload Infodokument </td>
+ <td><input type=\"file\" name=\"ifile\" size=\"50\" maxlength=\"50\" value=\"" .
+ $_FILES["ifile"]["name"] . "\"/></td>
+ </tr>";
+
+ }
+*/
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?";
+ elseif ($del)
+ $frage = "Information wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo " /></td>\n</tr>\n";
+ }
+ if (!is_null($_SESSION["recht"]) && in_array($repr."e",$_SESSION["recht"]))
+ {
+ echo "
+ <tr><td> </td>\n
+ <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
+ if ($infid)
+ {
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
+ }
+ echo "</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
+ echo "</form>\n";
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+
+ if ($del)
+ { // loescht auch m:n - Tabellen wegen Loeschweitergabe
+ $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
+ $retdi = $dbc -> execute($sql);
+ if ($retdi)
+ {
+ // alte Namen Infodocumente
+ $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ $ifile_old[] = $row->if_filename;
+
+ include_once ("inc/file_upload.inc.php");
+ foreach ($inf['ifname'] as $key => $filename)
+ $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
+ if ($retdf) echo "<p class='green'><b>Infodokumente zu ID '$infid' wurde gelöscht.</b></p>\n";
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen geloeschter Infodaten
+ echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
+ include ("inc/info_dat_show.inc.php");
+ }
+ else
+ {
+ echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
+ echo "sql = $sql<br />";
+ echo "error DELETE: " . $dbc->error . "<br />";
+ }
+ }
+ else //INSERT oder UPDATE
+ {
+ //daten speichern
+ $userid = $_SESSION["userid"];
+ $inf["iname"] = substr($inf["iname"],0,300);
+ $inf["ilong"] = substr($inf["ilong"],0,8000);
+ $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
+ if ($ityp == 8) $inf["sort"] = null;
+ if ($inf["ityp"] == -1) $inf["ityp"] = null;
+
+ if ($inf["persknr"] < "!") $inf["pers"] = null;
+ if ($inf["infrel"] == -1) $inf["infrel"] = null;
+ if ($inf["lang"] == -1) $inf["lang"] = null;
+ if ($inf["ifname"] < "!") $inf["ifname"] = null;
+ if ($inf["raum"] == -1) $inf["raum"] = null;
+ if ($inf["geb"] == -1) $inf["geb"] = null;
+
+ if ($inf["cdat"] == "") $inf["cdat"] = null;
+ if ($inf["vdat"] == "") $inf["vdat"] = null;
+ if ($inf["bdat"] == "") $inf["bdat"] = null;
+ if ($inf["fg"] == -1) $inf["fg"] = null;
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($infid)
+ { //UPDATE
+ // alter Name Infofile
+// $sql = "SELECT info_file FROM Info WHERE info_ID = $infid";
+// $ifile_old = $dbc -> querySingleItem($sql);
+
+ $stmt -> prepare("UPDATE fhiiqm.Info SET
+ info_name_s = ?,
+ info_name_l = ?,
+ info_date = ?,
+ info_valid_from = ?,
+ info_valid_to = ?,
+ infotyp_ID = ?,
+ persknr = ?,
+ lang = ?,
+ info_freigabe_ID = ?,
+ info_sort = ?,
+ info_rel_ID = ?,
+ raum_ID = ?,
+ geb_ID = ?,
+ userid = ?
+ WHERE info_ID = $infid");
+ $stmt -> bind_param('sssssiisisiiss',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$inf["raum"],$inf["geb"],$userid);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
+ }
+ else
+ { //INSERT
+// print_r($inf); echo "<br /><br />";
+ $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
+ infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,raum_ID,geb_ID,userid) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('sssssiisisiiss', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$inf["raum"],$inf["geb"],$userid);
+ $result = $stmt -> execute();
+
+ if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
+ if ($result)
+ { // INSERT o.k.
+ // info_ID ermitteln
+ $infid = $dbc -> insertId();
+ }
+ }
+ } // stmt-Objekt
+ if ($result)
+ {
+
+ // upload Files
+ if ($infid) include ("inc/info_file.inc.php");
+ // n:m Tabellen INSERT
+ if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
+/*
+ if ($_FILES["ifile"]["error"] == 1 || $_FILES["ifile"]["error"] == 2)
+ {
+ echo "<p class='red'><b>Uploadfile zu ID '$infid' > 32MByte!.</b></p>\n";
+ $retf=0; $reti=0;
+ }
+ elseif (is_uploaded_file($_FILES["ifile"]["tmp_name"]) && isset($_FILES["ifile"]["name"]) && $_FILES["ifile"]["name"] )
+ {
+ include ("inc/file_upload.inc.php");
+ $fname = gen_filename($inf['ifname'],"ifile",$infid);
+ $retdf = mod_file("/var/www/fhiiqm/infos",$infid,"","del"); // Loeschen alte Datei
+ $retf = upload("ifile", $fname, $infid, "infos"); // Datei prüfen und in Dokumentenverzeichnis verschieben
+
+ if ($retf)
+ { // upload o.k.
+ //UPDATE des Filenamens
+ $sql = "UPDATE Info SET info_file = '" . $infid . "_" . $fname ."' WHERE info_ID=$infid";
+ $reti=$dbc->execute($sql);
+ if (!$reti)
+ echo $dbc -> error . "<br>\n";
+ }
+
+ }
+ else
+ {// nur Aenderung Dateiname
+ if ($inf["ifname"]) // Dateiname vergeben
+ {
+ include ("inc/file_upload.inc.php");
+ $fname = gen_filename($inf["ifname"],$ifile_old,$infid,0);
+ $len = strlen($infid)+1;
+ if (substr($fname,0,$len) != "$infid" . "_") $fname = $infid . "_" . $fname;
+ if ($inf["ifname"] != $ifile_old)
+ {
+ $retf = mod_file("/var/www/fhiiqm/infos",$infid,$fname,"upd"); // Umbenennen alte Datei
+ if ($retf)
+ {
+ $sql = "UPDATE Info SET info_file = '" . $fname . "' WHERE info_ID=$infid";
+ $reti=$dbc->execute($sql);
+ if (!$reti)
+ echo $dbc -> error . "<br>\n";
+ if (substr($fname,0,$len) == "$infid" . "_") $fname = substr($fname,$len,50);
+ }
+
+ }
+ else
+ {
+ //kein Upload, keine Dateinamenaenderung
+ if (substr($fname,0,$len) == "$infid" . "_") $fname = substr($fname,$len,50);
+ $retf=1; $reti=1;
+ }
+ }
+ else // kein Dateiname angegeben
+ {
+ include ("inc/file_upload.inc.php");
+ $retf=1; $reti=1;
+ if ($ifile_old)
+ { // Loeschen alte Datei
+ $retf = mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old);
+ if ($retf)
+ {
+ $sql = "UPDATE Info SET info_file = null WHERE info_ID=$infid";
+ $reti=$dbc->execute($sql);
+ if (!$reti)
+ echo $dbc -> error . "<br>\n";
+ }
+ }
+ }
+ }
+*/
+ }
+ if ($result && $ret && $retf && $reta && $retp && $retv && $retl) // INSERT/UPDATE Info
+ {
+ //Eingabe Daten, Upload File erfolgreich
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen gespeicherte Infodaten
+ include ("inc/info_dat_show.inc.php");
+ }
+ } // INSERT / UPDATE
+ echo "</div>";
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
+ echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."?t=" . $ityp ."\" target=\"_self\" title=\"Info erfassen\">Weitere $titel erfassen</a></p>\n";
+
+ } // Form o.k. und submit
+?>
+
+</body>
+</html>
--- a/fhiiqm/info_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/info_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,447 +1,452 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 02/2012
- *
- * INSERT,UPDATE Informationen ausser Betriebsanweisung, Betriebsstoerung
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- $ityp = $_GET["t"];
-
- $infid = $_GET["i"];
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
-
- $del = $_POST["del"];
- $sub = $_POST["eintragen"];
- $dup = $_POST["dup"];
- if (!$dup) $dup = $_GET["dp"];
- $copy = $_GET["c"];
- $inf = $_POST["inf"];
- $ok = $_POST["ok"];
- if (!$inf["okn"]) $ok = false;
- $duptext="";
-
-// print_r($inf); echo "ok = $ok<br /><br />";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- $dbc = new dbconnection();
-
- if ($dup)
- { // Info duplizieren
- $tab = "Info";
- $key = "info_ID";
- $val = $infid;
-// $ret=1;
- $ret = duplicate_record ($tab, $key, $val);
- if ($ret)
- {
- $infid_new=$ret;
- // Infofilename loeschen
- $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
- $retf = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
-
- // duplizieren Produkte
- $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- $retp = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
-
- // duplizieren Adressat
- $sql = "INSERT INTO Info_Adressat SELECT $infid_new,info_adr_ID FROM Info_Adressat WHERE info_ID = $infid";
- $reta = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
-
- // duplizieren Verantwortliche
- $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
- $retv = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
-
- if ($ret && $retf && $retp && $reta && $retv)
- {
- $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&$getp";
- header("Location: $addr");
- exit;
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
-<!--
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
--->
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
-
- <title>Edit Informationen</title>
-</head>
-
-<body>
-
- <script>
- $(document).ready(function() {
- $("#titel").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
- $("#cdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#vdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#bdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("input[id='persknr']").addClass("long20");
- $("input[id='cdat']").addClass("long10");
- $("input[id='vdat']").addClass("long10");
- $("input[id='bdat']").addClass("long10");
- });
- function addInputf(divId,anz){
- var cdiv = document.createElement('div');
- var idl = "cbl_" + anz;
- cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
- cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
- cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
- //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
- cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
- cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
- cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
- document.getElementById(divId).appendChild(cdiv);
- var delcb = document.getElementById('del');
- delcb.id = "del_" + anz;
- delcb.style.display = 'none';
- var lcb = document.getElementById('lb');
- lcb.id = "lb_" + anz;
- lcb.setAttribute("for", delcb.id);
- lcb.style.display = 'none';
- counter++;
- }
- function markdelInput(divId,anz){
- for (i=1; i<anz; i++)
- {
- var id = "del_" + i;
- var delcb = document.getElementById(id);
- delcb.style.display = 'inline';
- var idl = "lb_" + i;
- var lcb = document.getElementById(idl);
- lcb.style.display = 'inline';
- }
- }
- </script>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"/fhiiqm/img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
-
-
- echo "<div align='center'>";
- if ($infid) $text = "editieren"; else $text = "erfassen";
- if ($copy) $duptext = " (Kopie)";
- echo "<h3>Information $text$duptext<h3>";
-
- echo "</div>\n";
-
- //Filename wenn Upload?
- if (isset($_FILES["ifile"]["error"]))
- foreach ($_FILES["ifile"]["error"] as $key => $err)
- if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
-
- if (!$ok || (!$sub && !$del && !$dup))
- {
- if ($infid && (!$sub || !$del) && !isset($inf))
- { // update
- $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
- i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,betrag,
- CONCAT(nachname,', ',vorname) AS aname
- FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
- ON i.persknr=m.persknr
- WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["infid"] = $infid;
- $inf["iname"] = $row->info_name_s;
- $inf["ilong"] = $row->info_name_l;
- $inf["cdat"] = $row->info_date;
- $inf["vdat"] = $row->info_valid_from;
- $inf["bdat"] = $row->info_valid_to;
- $inf["ityp"] = $row->infotyp_ID;
- $inf["persknr"] = $row->aname;
- $inf["pers"] = $row->persknr;
- $inf["infrel"] = $row->info_rel_ID;
-// $inf["ifname"] = $row->info_file;
- $inf["lang"] = $row->lang;
- $inf["fg"] = $row->info_freigabe_ID;
- $inf["sort"] = $row->info_sort;
- $inf["betr"] = str_replace('.',',',$row->betrag);
- }
- }
- // Produkt
- $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf['prid'][] = $row->produkt_ID;
- }
- }
- // Adressat
- $sql = "SELECT info_adr_ID FROM Info_Adressat WHERE info_id = $infid";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- $inf["adr"][] = $row->info_adr_ID;
- }
- // Verantwortlicher
- $sql = "SELECT iv.persknr,prioritaet, CONCAT (nachname, ', ',vorname)
- FROM Info_Verantwortlich iv INNER JOIN Mitarbeiter m ON iv.persknr=m.persknr
- WHERE info_id = $infid
- ORDER BY 3";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["vpers"][] = $row->persknr;
-// $inf["prio"][] = $row->prioritaet;
- $inf["prio"][$row->persknr] = $row->prioritaet;
- }
- }
- // Dokumente
- $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["ifname"][] = $row->if_filename;
- $inf["swort"][] = $row->if_schlagwort;
- }
- }
-// print_r($inf); echo "<br /><br />";
-
- }
- include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_form2.inc.php");
-/* if ($sub)
- {
- echo
- "<tr>
- <td>Upload Infodokument </td>
- <td><input type=\"file\" name=\"ifile\" size=\"50\" maxlength=\"50\" value=\"" .
- $_FILES["ifile"]["name"] . "\"/></td>
- </tr>";
-
- }
-*/
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?";
- elseif ($del)
- $frage = "Information wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo " /></td>\n</tr>\n";
- }
- if (!is_null($_SESSION["recht"]) && in_array("ie",$_SESSION["recht"]))
- {
- echo "
- <tr><td> </td>\n
- <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
- if ($infid)
- {
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
- }
- echo "</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
- echo "</form>\n";
- }
- else
- {
- echo "<div align='center'>\n";
-
- if ($del)
- { // loescht auch m:n - Tabellen wegen Loeschweitergabe
- $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
- $retdi = $dbc -> execute($sql);
- if ($retdi)
- {
- // alte Namen Infodocumente
- $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($res = $dbc -> queryObjectArray($sql))
- foreach ($res as $row)
- $ifile_old[] = $row->if_filename;
-
- include_once ("inc/file_upload.inc.php");
- foreach ($inf['ifname'] as $key => $filename)
- $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
- if ($retdf) echo "<p class='green'><b>Infodokumente zu ID '$infid' wurde gelöscht.</b></p>\n";
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen geloeschter Infodaten
- echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
- include ("inc/info_dat_show.inc.php");
- }
- else
- {
- echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
- echo "sql = $sql<br />";
- echo "error DELETE: " . $dbc->error . "<br />";
- }
- }
- else //INSERT oder UPDATE
- {
- //daten speichern
- $inf["iname"] = substr($inf["iname"],0,300);
- $inf["ilong"] = substr($inf["ilong"],0,8000);
- $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
- if ($inf["ityp"] == -1) $inf["ityp"] = null;
-
- if ($inf["persknr"] < "!") $inf["pers"] = null;
- if ($inf["infrel"] == -1) $inf["infrel"] = null;
- if ($inf["lang"] == -1) $inf["lang"] = null;
- if ($inf["ifname"] < "!") $inf["ifname"] = null;
-
- if ($inf["cdat"] == "") $inf["cdat"] = null;
- if ($inf["vdat"] == "") $inf["vdat"] = null;
- if ($inf["bdat"] == "") $inf["bdat"] = null;
- if ($inf["fg"] == -1) $inf["fg"] = null;
- if (isset($inf['betr']) && $inf['betr']) $betrag = dbformat_wert($inf['betr']); else $betrag = null;
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($infid)
- { //UPDATE
-
- $stmt -> prepare("UPDATE fhiiqm.Info SET
- info_name_s = ?,
- info_name_l = ?,
- info_date = ?,
- info_valid_from = ?,
- info_valid_to = ?,
- infotyp_ID = ?,
- persknr = ?,
- lang = ?,
- info_freigabe_ID = ?,
- info_sort = ?,
- info_rel_ID = ?,
- betrag = ? WHERE info_ID = $infid");
- $stmt -> bind_param('sssssiisisid',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
- }
- else
- { //INSERT
- $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
- infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,betrag) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)");
- $stmt -> bind_param('sssssiisisid', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag);
- $result = $stmt -> execute();
-
- if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
- if ($result)
- { // INSERT o.k.
- // info_ID ermitteln
- $infid = $dbc -> insertId();
- }
- }
- } // stmt-Objekt
- if ($result)
- {
- // upload Files
- if ($infid) include ("inc/info_file.inc.php");
- // n:m Tabellen INSERT
- if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
- }
- if ($result && $retf && $ret && $reta && $retp && $retv) // INSERT/UPDATE Info
- {
- //Eingabe Daten, Upload File erfolgreich
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen gespeicherte Infodaten
- include ("inc/info_dat_show.inc.php");
- }
- } // INSERT / UPDATE
- echo "</div>";
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
- echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Info erfassen\">Weitere Info erfassen</a></p>\n";
-
- } // Form o.k. und submit
-?>
-
-</body>
-</html>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 02/2012
+ *
+ * INSERT,UPDATE Informationen ausser Betriebsanweisung, Betriebsstoerung
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ $ityp = $_GET["t"];
+
+ $infid = $_GET["i"];
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
+
+ $del = $_POST["del"];
+ $sub = $_POST["eintragen"];
+ $dup = $_POST["dup"];
+ if (!$dup) $dup = $_GET["dp"];
+ $copy = $_GET["c"];
+ $inf = $_POST["inf"];
+ $ok = $_POST["ok"];
+ if (!$inf["okn"]) $ok = false;
+ $duptext="";
+
+// print_r($inf); echo "ok = $ok<br /><br />";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ $dbc = new dbconnection();
+
+ if ($dup)
+ { // Info duplizieren
+ $tab = "Info";
+ $key = "info_ID";
+ $val = $infid;
+// $ret=1;
+ $ret = duplicate_record ($tab, $key, $val);
+ if ($ret)
+ {
+ $infid_new=$ret;
+ // Infofilename loeschen
+ $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
+ $retf = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
+
+ // duplizieren Produkte
+ $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ $retp = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
+
+ // duplizieren Adressat
+ $sql = "INSERT INTO Info_Adressat SELECT $infid_new,info_adr_ID FROM Info_Adressat WHERE info_ID = $infid";
+ $reta = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
+
+ // duplizieren Verantwortliche
+ $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
+ $retv = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
+
+ if ($ret && $retf && $retp && $reta && $retv)
+ {
+ $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&$getp";
+ header("Location: $addr");
+ exit;
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+<!--
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
+-->
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+
+ <title>Edit Informationen</title>
+</head>
+
+<body>
+
+ <script>
+ $(document).ready(function() {
+ $("#titel").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("#cdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#vdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#bdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("input[id='persknr']").addClass("long20");
+ $("input[id='cdat']").addClass("long10");
+ $("input[id='vdat']").addClass("long10");
+ $("input[id='bdat']").addClass("long10");
+ });
+ function addInputf(divId,anz){
+ var cdiv = document.createElement('div');
+ var idl = "cbl_" + anz;
+ cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
+ cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
+ cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
+ //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
+ cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
+ cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
+ cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
+ document.getElementById(divId).appendChild(cdiv);
+ var delcb = document.getElementById('del');
+ delcb.id = "del_" + anz;
+ delcb.style.display = 'none';
+ var lcb = document.getElementById('lb');
+ lcb.id = "lb_" + anz;
+ lcb.setAttribute("for", delcb.id);
+ lcb.style.display = 'none';
+ counter++;
+ }
+ function markdelInput(divId,anz){
+ for (i=1; i<anz; i++)
+ {
+ var id = "del_" + i;
+ var delcb = document.getElementById(id);
+ delcb.style.display = 'inline';
+ var idl = "lb_" + i;
+ var lcb = document.getElementById(idl);
+ lcb.style.display = 'inline';
+ }
+ }
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"/fhiiqm/img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
+
+
+ echo "<div align='center'>";
+ if ($infid) $text = "editieren"; else $text = "erfassen";
+ if ($copy) $duptext = " (Kopie)";
+ echo "<h3>Information $text$duptext<h3>";
+
+ echo "</div>\n";
+
+ //Filename wenn Upload?
+ if (isset($_FILES["ifile"]["error"]))
+ foreach ($_FILES["ifile"]["error"] as $key => $err)
+ if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
+
+ if (!$ok || (!$sub && !$del && !$dup))
+ {
+ if ($infid && (!$sub || !$del) && !isset($inf))
+ { // update
+ $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
+ i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,betrag,
+ CONCAT(nachname,', ',vorname) AS aname,i.timestamp,i.userid
+ FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
+ ON i.persknr=m.persknr
+ WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["infid"] = $infid;
+ $inf["iname"] = $row->info_name_s;
+ $inf["ilong"] = $row->info_name_l;
+ $inf["cdat"] = $row->info_date;
+ $inf["vdat"] = $row->info_valid_from;
+ $inf["bdat"] = $row->info_valid_to;
+ $inf["ityp"] = $row->infotyp_ID;
+ $inf["persknr"] = $row->aname;
+ $inf["pers"] = $row->persknr;
+ $inf["infrel"] = $row->info_rel_ID;
+// $inf["ifname"] = $row->info_file;
+ $inf["lang"] = $row->lang;
+ $inf["fg"] = $row->info_freigabe_ID;
+ $inf["sort"] = $row->info_sort;
+ $inf["betr"] = str_replace('.',',',$row->betrag);
+ $inf["tstmp"] = $row->timestamp;
+ $inf["uid"] = $row->userid;
+ }
+ }
+ // Produkt
+ $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf['prid'][] = $row->produkt_ID;
+ }
+ }
+ // Adressat
+ $sql = "SELECT info_adr_ID FROM Info_Adressat WHERE info_id = $infid";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ $inf["adr"][] = $row->info_adr_ID;
+ }
+ // Verantwortlicher
+ $sql = "SELECT iv.persknr,prioritaet, CONCAT (nachname, ', ',vorname)
+ FROM Info_Verantwortlich iv INNER JOIN Mitarbeiter m ON iv.persknr=m.persknr
+ WHERE info_id = $infid
+ ORDER BY 3";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["vpers"][] = $row->persknr;
+// $inf["prio"][] = $row->prioritaet;
+ $inf["prio"][$row->persknr] = $row->prioritaet;
+ }
+ }
+ // Dokumente
+ $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["ifname"][] = $row->if_filename;
+ $inf["swort"][] = $row->if_schlagwort;
+ }
+ }
+// print_r($inf); echo "<br /><br />";
+
+ }
+ include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_form2.inc.php");
+/* if ($sub)
+ {
+ echo
+ "<tr>
+ <td>Upload Infodokument </td>
+ <td><input type=\"file\" name=\"ifile\" size=\"50\" maxlength=\"50\" value=\"" .
+ $_FILES["ifile"]["name"] . "\"/></td>
+ </tr>";
+
+ }
+*/
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?";
+ elseif ($del)
+ $frage = "Information wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo " /></td>\n</tr>\n";
+ }
+ if (!is_null($_SESSION["recht"]) && in_array("ie",$_SESSION["recht"]))
+ {
+ echo "
+ <tr><td> </td>\n
+ <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
+ if ($infid)
+ {
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
+ }
+ echo "</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
+ echo "</form>\n";
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+
+ if ($del)
+ { // loescht auch m:n - Tabellen wegen Loeschweitergabe
+ $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
+ $retdi = $dbc -> execute($sql);
+ if ($retdi)
+ {
+ // alte Namen Infodocumente
+ $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ $ifile_old[] = $row->if_filename;
+
+ include_once ("inc/file_upload.inc.php");
+ foreach ($inf['ifname'] as $key => $filename)
+ $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
+ if ($retdf) echo "<p class='green'><b>Infodokumente zu ID '$infid' wurde gelöscht.</b></p>\n";
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen geloeschter Infodaten
+ echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
+ include ("inc/info_dat_show.inc.php");
+ }
+ else
+ {
+ echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
+ echo "sql = $sql<br />";
+ echo "error DELETE: " . $dbc->error . "<br />";
+ }
+ }
+ else //INSERT oder UPDATE
+ {
+ //daten speichern
+ $userid = $_SESSION["userid"];
+ $inf["iname"] = substr($inf["iname"],0,300);
+ $inf["ilong"] = substr($inf["ilong"],0,8000);
+ $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
+ if ($inf["ityp"] == -1) $inf["ityp"] = null;
+
+ if ($inf["persknr"] < "!") $inf["pers"] = null;
+ if ($inf["infrel"] == -1) $inf["infrel"] = null;
+ if ($inf["lang"] == -1) $inf["lang"] = null;
+ if ($inf["ifname"] < "!") $inf["ifname"] = null;
+
+ if ($inf["cdat"] == "") $inf["cdat"] = null;
+ if ($inf["vdat"] == "") $inf["vdat"] = null;
+ if ($inf["bdat"] == "") $inf["bdat"] = null;
+ if ($inf["fg"] == -1) $inf["fg"] = null;
+ if (isset($inf['betr']) && $inf['betr']) $betrag = dbformat_wert($inf['betr']); else $betrag = null;
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($infid)
+ { //UPDATE
+
+ $stmt -> prepare("UPDATE fhiiqm.Info SET
+ info_name_s = ?,
+ info_name_l = ?,
+ info_date = ?,
+ info_valid_from = ?,
+ info_valid_to = ?,
+ infotyp_ID = ?,
+ persknr = ?,
+ lang = ?,
+ info_freigabe_ID = ?,
+ info_sort = ?,
+ info_rel_ID = ?,
+ betrag = ?,
+ userid = ?
+ WHERE info_ID = $infid");
+ $stmt -> bind_param('sssssiisisids',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag,$userid);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
+ }
+ else
+ { //INSERT
+ $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
+ infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,betrag,userid) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('sssssiisisids', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag,$userid);
+ $result = $stmt -> execute();
+
+ if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
+ if ($result)
+ { // INSERT o.k.
+ // info_ID ermitteln
+ $infid = $dbc -> insertId();
+ }
+ }
+ } // stmt-Objekt
+ if ($result)
+ {
+ // upload Files
+ if ($infid) include ("inc/info_file.inc.php");
+ // n:m Tabellen INSERT
+ if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
+ }
+ if ($result && $retf && $ret && $reta && $retp && $retv) // INSERT/UPDATE Info
+ {
+ //Eingabe Daten, Upload File erfolgreich
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen gespeicherte Infodaten
+ include ("inc/info_dat_show.inc.php");
+ }
+ } // INSERT / UPDATE
+ echo "</div>";
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
+ echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Info erfassen\">Weitere Info erfassen</a></p>\n";
+
+ } // Form o.k. und submit
+?>
+
+</body>
+</html>
--- a/fhiiqm/info_ed3.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/info_ed3.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,497 +1,502 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 02/2012
- *
- * INSERT(,UPDATE) Informationen Geschaeftverteilungsplan
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
-
- $ityp = $_GET["t"]; // t=6 - Geschaeftsverteilungsplan
-
- $infid = $_GET["i"];
- $del = $_POST["del"];
- $sub = $_POST["eintragen"];
- $dup = $_POST["dup"];
- if (!$dup) $dup = $_GET["d"];
- $copy = $_GET["c"];
- $inf = $_POST["inf"];
- $ok = $_POST["ok"];
- if (!$inf["okn"]) $ok = false;
- $duptext="";
-
-// print_r($inf); echo "<br /><br />";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- $dbc = new dbconnection();
-
- if ($dup)
- { // Info duplizieren
- $tab = "Info";
- $key = "info_ID";
- $val = $infid;
-// $ret=1;
- $ret = duplicate_record ($tab, $key, $val);
- if ($ret)
- {
- $infid_new=$ret;
- // Infofilename loeschen
- $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
- $retf = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
-
- // duplizieren Produkte
- $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- $retp = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
-
- // duplizieren Adressat
- $sql = "INSERT INTO Info_Adressat SELECT $infid_new,info_adr_ID FROM Info_Adressat WHERE info_ID = $infid";
- $reta = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
-
- // duplizieren Verantwortliche
- $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
- $retv = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
-
- if ($ret && $retf && $retp && $reta && $retv)
- {
- $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&$getp";
- header("Location: $addr");
- exit;
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
-
- <title>Edit Geschäftsverteilungsplan</title>
-</head>
-
-<body>
-
- <script>
- function split( val ) {
- return val.split( /;\s*/ );
- }
- function extractLast( term ) {
- return split( term ).pop();
- }
-// $(document).ready(function() {
- $(function() {
- $("#titel").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
- $("#vpers")
- .bind( "keydown", function( event ) {
- if ( event.keyCode === $.ui.keyCode.TAB &&
- $( this ).data( "autocomplete" ).menu.active ) {
- event.preventDefault();
-// alert ("bind: "+event.keyCode);
- }
- })
- .autocomplete({
-// source: "/fhiiqm/inc/ma_list_ac.inc.php",
-// minLength: 2,
-// select: function(event,ui){$("#pid").val(ui.item.id);}
- source: function( request, response ) {
- $.getJSON( "/fhiiqm/inc/ma_list_ac.inc.php", {
- term: extractLast( request.term )
- }, response );
- },
- focus: function() {
- // prevent value inserted on focus
- return false;
- },
- select: function( event, ui ) {
- if (this.value.length < 6) // zuvor Feld-id 'vpers' geleert und bis zu 5 Zeichen eingegeben
- { $("#vpid").val("");}
- var terms = split( this.value );
-// alert ("eingabe: "+terms+ ", ids="+idstr.valueOf());
- // remove the current input
- terms.pop();
- // add the selected item
- terms.push( ui.item.value );
- // add placeholder to get the comma-and-space at the end
- terms.push( "" );
-// alert ("select: "+terms+ "ids = "+$("#vpid").val());
- this.value = terms.join( "; " );
-
- var ids = $("#vpid").val().split(",");
- ids.push(ui.item.id);
- ids.join(",");
-// alert (ids);
- $("#vpid").val(ids);
- return false;
- },
- change: function(event, ui){
-// alert ("change: "+ui.item.value+","+ ui.item.id);
- },
- search: function() {
- // custom minLength
- var term = extractLast( this.value );
- if ( term.length < 2 ) {
- return false;
- }
- }
- });
- $("#cdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#vdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#bdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("input[id='persknr']").addClass("long20");
- $("input[id='cdat']").addClass("long10");
- $("input[id='vdat']").addClass("long10");
- $("input[id='bdat']").addClass("long10");
- });
- function addInputf(divId,anz){
- var cdiv = document.createElement('div');
- var idl = "cbl_" + anz;
- cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
- cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
- cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
- //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
- cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
- cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
- cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
- document.getElementById(divId).appendChild(cdiv);
- var delcb = document.getElementById('del');
- delcb.id = "del_" + anz;
- delcb.style.display = 'none';
- var lcb = document.getElementById('lb');
- lcb.id = "lb_" + anz;
- lcb.setAttribute("for", delcb.id);
- lcb.style.display = 'none';
- counter++;
- }
- function markdelInput(divId,anz){
- for (i=1; i<anz; i++)
- {
- var id = "del_" + i;
- var delcb = document.getElementById(id);
- delcb.style.display = 'inline';
- var idl = "lb_" + i;
- var lcb = document.getElementById(idl);
- lcb.style.display = 'inline';
- }
- }
- </script>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
-
-
- echo "<div align='center'>";
- if ($infid) $text = "editieren"; else $text = "erfassen";
- if ($copy) $duptext = " (Kopie)";
- echo "<h3>Geschäftsverteilungsplan $text$duptext<h3>";
-
- echo "</div>\n";
-
- //Filename wenn Upload?
- if (isset($_FILES["ifile"]["error"]))
- foreach ($_FILES["ifile"]["error"] as $key => $err)
- if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
-
- if (!$ok || (!$sub && !$del && !$dup))
- {
- if ($infid && (!$sub || !$del) && !isset($inf))
- { // update
- $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
- i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,betrag,
- CONCAT(nachname,', ',vorname) AS aname
- FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
- ON i.persknr=m.persknr
- WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["infid"] = $infid;
- $inf["iname"] = $row->info_name_s;
- $inf["ilong"] = $row->info_name_l;
- $inf["cdat"] = $row->info_date;
- $inf["vdat"] = $row->info_valid_from;
- $inf["bdat"] = $row->info_valid_to;
- $inf["ityp"] = $row->infotyp_ID;
- $inf["persknr"] = $row->aname;
- $inf["pers"] = $row->persknr;
- $inf["infrel"] = $row->info_rel_ID;
-// $inf["ifname"] = $row->info_file;
- $inf["lang"] = $row->lang;
- $inf["fg"] = $row->info_freigabe_ID;
- $inf["sort"] = $row->info_sort;
- $inf["betr"] = str_replace('.',',',$row->betrag);
- }
- }
- // Produkt
- $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf['prid'][] = $row->produkt_ID;
- }
- }
- // Adressat
- $sql = "SELECT info_adr_ID FROM Info_Adressat WHERE info_id = $infid";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- $inf["adr"][] = $row->info_adr_ID;
- }
- // Verantwortlicher
- $sql = "SELECT iv.persknr,prioritaet, CONCAT (nachname, ', ',vorname) as ma
- FROM Info_Verantwortlich iv INNER JOIN Mitarbeiter m ON iv.persknr=m.persknr
- WHERE info_id = $infid
- ORDER BY 3";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["vpers"] .= $row->ma . "; ";
- $inf["vpn"] .= $row->persknr .",";
-// $inf["prio"][] = $row->prioritaet;
- $inf["prio"][$row->persknr] = $row->prioritaet;
- }
- $inf["vpn"] = substr($inf["vpn"],0,strlen($inf["vpn"])-1);
- }
- // Dokumente
- $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["ifname"][] = $row->if_filename;
- $inf["swort"][] = $row->if_schlagwort;
- }
- }
-// print_r($inf); echo "<br /><br />";
-
- }
- include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_form3.inc.php");
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?";
- elseif ($del)
- $frage = "Information wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo " /></td>\n</tr>\n";
- }
- if (!is_null($_SESSION["recht"]) && in_array("ie",$_SESSION["recht"]))
- {
- echo "
- <tr><td> </td>\n
- <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
- if ($infid)
- {
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
- }
- echo "</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
- echo "</form>\n";
- }
- else
- {
- echo "<div align='center'>\n";
-
- if ($del)
- { // loescht auch m:n - Tabellen wegen Loeschweitergabe
- $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
- $retdi = $dbc -> execute($sql);
- if ($retdi)
- {
- // alte Namen Infodocumente
- $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($res = $dbc -> queryObjectArray($sql))
- foreach ($res as $row)
- $ifile_old[] = $row->if_filename;
-
- include_once ("inc/file_upload.inc.php");
- foreach ($inf['ifname'] as $key => $filename)
- $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
- if ($retdf) echo "<p class='green'><b>Infodokument zu ID '$infid' wurde gelöscht.</b></p>\n";
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen geloeschter Infodaten
- echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
- include ("inc/info_dat_show.inc.php");
- }
- else
- {
- echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
- echo "sql = $sql<br />";
- echo "error DELETE: " . $dbc->error . "<br />";
- }
- }
- else //INSERT oder UPDATE
- {
- //daten speichern
- $inf["iname"] = substr($inf["iname"],0,300);
- $inf["ilong"] = substr($inf["ilong"],0,8000);
- $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
- if ($inf["ityp"] == -1) $inf["ityp"] = null;
-
- if ($inf["persknr"] < "!") $inf["pers"] = null;
- if ($inf["infrel"] == -1) $inf["infrel"] = null;
- if ($inf["lang"] == -1) $inf["lang"] = null;
- if ($inf["ifname"] < "!") $inf["ifname"] = null;
-
- if ($inf["cdat"] == "") $inf["cdat"] = null;
- if ($inf["vdat"] == "") $inf["vdat"] = null;
- if ($inf["bdat"] == "") $inf["bdat"] = null;
- if ($inf["fg"] == -1) $inf["fg"] = null;
- if (isset($inf['betr']) && $inf['betr']) $betrag = dbformat_wert($inf['betr']); else $betrag = null;
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($infid)
- { //UPDATE
-
- $stmt -> prepare("UPDATE fhiiqm.Info SET
- info_name_s = ?,
- info_name_l = ?,
- info_date = ?,
- info_valid_from = ?,
- info_valid_to = ?,
- infotyp_ID = ?,
- persknr = ?,
- lang = ?,
- info_freigabe_ID = ?,
- info_sort = ?,
- info_rel_ID = ?,
- betrag = ? WHERE info_ID = $infid");
- $stmt -> bind_param('sssssiisisid',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
- }
- else
- { //INSERT
- $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
- infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,betrag) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)");
- $stmt -> bind_param('sssssiisisid', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag);
- $result = $stmt -> execute();
-
- if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
- if ($result)
- { // INSERT o.k.
- // info_ID ermitteln
- $infid = $dbc -> insertId();
- }
- }
- } // stmt-Objekt
- if ($result)
- {
- // upload Files
- if ($infid) include ("inc/info_file.inc.php");
- // n:m Tabellen INSERT
- if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
-
- }
- if ($result && $retf && $ret && $reta && $retp && $retv) // INSERT/UPDATE Info
- {
- //Eingabe Daten, Upload File erfolgreich
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen gespeicherte Infodaten
- if ($fname)
- $ifile = $infid . "_" . $fname;
- else
- $ifile = $inf['ifname'];
- include ("inc/info_dat_show.inc.php");
- }
- } // INSERT / UPDATE
- echo "</div>";
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
- echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Info erfassen\">Weitere Info erfassen</a></p>\n";
-
- } // Form o.k. und submit
-?>
-
-</body>
-</html>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 02/2012
+ *
+ * INSERT(,UPDATE) Informationen Geschaeftverteilungsplan
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
+
+ $ityp = $_GET["t"]; // t=6 - Geschaeftsverteilungsplan
+
+ $infid = $_GET["i"];
+ $del = $_POST["del"];
+ $sub = $_POST["eintragen"];
+ $dup = $_POST["dup"];
+ if (!$dup) $dup = $_GET["d"];
+ $copy = $_GET["c"];
+ $inf = $_POST["inf"];
+ $ok = $_POST["ok"];
+ if (!$inf["okn"]) $ok = false;
+ $duptext="";
+
+// print_r($inf); echo "<br /><br />";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ $dbc = new dbconnection();
+
+ if ($dup)
+ { // Info duplizieren
+ $tab = "Info";
+ $key = "info_ID";
+ $val = $infid;
+// $ret=1;
+ $ret = duplicate_record ($tab, $key, $val);
+ if ($ret)
+ {
+ $infid_new=$ret;
+ // Infofilename loeschen
+ $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
+ $retf = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
+
+ // duplizieren Produkte
+ $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ $retp = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
+
+ // duplizieren Adressat
+ $sql = "INSERT INTO Info_Adressat SELECT $infid_new,info_adr_ID FROM Info_Adressat WHERE info_ID = $infid";
+ $reta = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
+
+ // duplizieren Verantwortliche
+ $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
+ $retv = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
+
+ if ($ret && $retf && $retp && $reta && $retv)
+ {
+ $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&$getp";
+ header("Location: $addr");
+ exit;
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+
+ <title>Edit Geschäftsverteilungsplan</title>
+</head>
+
+<body>
+
+ <script>
+ function split( val ) {
+ return val.split( /;\s*/ );
+ }
+ function extractLast( term ) {
+ return split( term ).pop();
+ }
+// $(document).ready(function() {
+ $(function() {
+ $("#titel").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("#vpers")
+ .bind( "keydown", function( event ) {
+ if ( event.keyCode === $.ui.keyCode.TAB &&
+ $( this ).data( "autocomplete" ).menu.active ) {
+ event.preventDefault();
+// alert ("bind: "+event.keyCode);
+ }
+ })
+ .autocomplete({
+// source: "/fhiiqm/inc/ma_list_ac.inc.php",
+// minLength: 2,
+// select: function(event,ui){$("#pid").val(ui.item.id);}
+ source: function( request, response ) {
+ $.getJSON( "/fhiiqm/inc/ma_list_ac.inc.php", {
+ term: extractLast( request.term )
+ }, response );
+ },
+ focus: function() {
+ // prevent value inserted on focus
+ return false;
+ },
+ select: function( event, ui ) {
+ if (this.value.length < 6) // zuvor Feld-id 'vpers' geleert und bis zu 5 Zeichen eingegeben
+ { $("#vpid").val("");}
+ var terms = split( this.value );
+// alert ("eingabe: "+terms+ ", ids="+idstr.valueOf());
+ // remove the current input
+ terms.pop();
+ // add the selected item
+ terms.push( ui.item.value );
+ // add placeholder to get the comma-and-space at the end
+ terms.push( "" );
+// alert ("select: "+terms+ "ids = "+$("#vpid").val());
+ this.value = terms.join( "; " );
+
+ var ids = $("#vpid").val().split(",");
+ ids.push(ui.item.id);
+ ids.join(",");
+// alert (ids);
+ $("#vpid").val(ids);
+ return false;
+ },
+ change: function(event, ui){
+// alert ("change: "+ui.item.value+","+ ui.item.id);
+ },
+ search: function() {
+ // custom minLength
+ var term = extractLast( this.value );
+ if ( term.length < 2 ) {
+ return false;
+ }
+ }
+ });
+ $("#cdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#vdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#bdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("input[id='persknr']").addClass("long20");
+ $("input[id='cdat']").addClass("long10");
+ $("input[id='vdat']").addClass("long10");
+ $("input[id='bdat']").addClass("long10");
+ });
+ function addInputf(divId,anz){
+ var cdiv = document.createElement('div');
+ var idl = "cbl_" + anz;
+ cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
+ cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
+ cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
+ //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
+ cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
+ cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
+ cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
+ document.getElementById(divId).appendChild(cdiv);
+ var delcb = document.getElementById('del');
+ delcb.id = "del_" + anz;
+ delcb.style.display = 'none';
+ var lcb = document.getElementById('lb');
+ lcb.id = "lb_" + anz;
+ lcb.setAttribute("for", delcb.id);
+ lcb.style.display = 'none';
+ counter++;
+ }
+ function markdelInput(divId,anz){
+ for (i=1; i<anz; i++)
+ {
+ var id = "del_" + i;
+ var delcb = document.getElementById(id);
+ delcb.style.display = 'inline';
+ var idl = "lb_" + i;
+ var lcb = document.getElementById(idl);
+ lcb.style.display = 'inline';
+ }
+ }
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
+
+
+ echo "<div align='center'>";
+ if ($infid) $text = "editieren"; else $text = "erfassen";
+ if ($copy) $duptext = " (Kopie)";
+ echo "<h3>Geschäftsverteilungsplan $text$duptext<h3>";
+
+ echo "</div>\n";
+
+ //Filename wenn Upload?
+ if (isset($_FILES["ifile"]["error"]))
+ foreach ($_FILES["ifile"]["error"] as $key => $err)
+ if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
+
+ if (!$ok || (!$sub && !$del && !$dup))
+ {
+ if ($infid && (!$sub || !$del) && !isset($inf))
+ { // update
+ $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
+ i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,betrag,
+ CONCAT(nachname,', ',vorname) AS aname,i.timestamp,i.userid
+ FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
+ ON i.persknr=m.persknr
+ WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["infid"] = $infid;
+ $inf["iname"] = $row->info_name_s;
+ $inf["ilong"] = $row->info_name_l;
+ $inf["cdat"] = $row->info_date;
+ $inf["vdat"] = $row->info_valid_from;
+ $inf["bdat"] = $row->info_valid_to;
+ $inf["ityp"] = $row->infotyp_ID;
+ $inf["persknr"] = $row->aname;
+ $inf["pers"] = $row->persknr;
+ $inf["infrel"] = $row->info_rel_ID;
+// $inf["ifname"] = $row->info_file;
+ $inf["lang"] = $row->lang;
+ $inf["fg"] = $row->info_freigabe_ID;
+ $inf["sort"] = $row->info_sort;
+ $inf["betr"] = str_replace('.',',',$row->betrag);
+ $inf["tstmp"] = $row->timestamp;
+ $inf["uid"] = $row->userid;
+ }
+ }
+ // Produkt
+ $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf['prid'][] = $row->produkt_ID;
+ }
+ }
+ // Adressat
+ $sql = "SELECT info_adr_ID FROM Info_Adressat WHERE info_id = $infid";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ $inf["adr"][] = $row->info_adr_ID;
+ }
+ // Verantwortlicher
+ $sql = "SELECT iv.persknr,prioritaet, CONCAT (nachname, ', ',vorname) as ma
+ FROM Info_Verantwortlich iv INNER JOIN Mitarbeiter m ON iv.persknr=m.persknr
+ WHERE info_id = $infid
+ ORDER BY 3";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["vpers"] .= $row->ma . "; ";
+ $inf["vpn"] .= $row->persknr .",";
+// $inf["prio"][] = $row->prioritaet;
+ $inf["prio"][$row->persknr] = $row->prioritaet;
+ }
+ $inf["vpn"] = substr($inf["vpn"],0,strlen($inf["vpn"])-1);
+ }
+ // Dokumente
+ $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["ifname"][] = $row->if_filename;
+ $inf["swort"][] = $row->if_schlagwort;
+ }
+ }
+// print_r($inf); echo "<br /><br />";
+
+ }
+ include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_form3.inc.php");
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?";
+ elseif ($del)
+ $frage = "Information wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo " /></td>\n</tr>\n";
+ }
+ if (!is_null($_SESSION["recht"]) && in_array("ie",$_SESSION["recht"]))
+ {
+ echo "
+ <tr><td> </td>\n
+ <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
+ if ($infid)
+ {
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
+ }
+ echo "</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
+ echo "</form>\n";
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+
+ if ($del)
+ { // loescht auch m:n - Tabellen wegen Loeschweitergabe
+ $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
+ $retdi = $dbc -> execute($sql);
+ if ($retdi)
+ {
+ // alte Namen Infodocumente
+ $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ $ifile_old[] = $row->if_filename;
+
+ include_once ("inc/file_upload.inc.php");
+ foreach ($inf['ifname'] as $key => $filename)
+ $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
+ if ($retdf) echo "<p class='green'><b>Infodokument zu ID '$infid' wurde gelöscht.</b></p>\n";
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen geloeschter Infodaten
+ echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
+ include ("inc/info_dat_show.inc.php");
+ }
+ else
+ {
+ echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
+ echo "sql = $sql<br />";
+ echo "error DELETE: " . $dbc->error . "<br />";
+ }
+ }
+ else //INSERT oder UPDATE
+ {
+ //daten speichern
+ $userid = $_SESSION["userid"];
+ $inf["iname"] = substr($inf["iname"],0,300);
+ $inf["ilong"] = substr($inf["ilong"],0,8000);
+ $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
+ if ($inf["ityp"] == -1) $inf["ityp"] = null;
+
+ if ($inf["persknr"] < "!") $inf["pers"] = null;
+ if ($inf["infrel"] == -1) $inf["infrel"] = null;
+ if ($inf["lang"] == -1) $inf["lang"] = null;
+ if ($inf["ifname"] < "!") $inf["ifname"] = null;
+
+ if ($inf["cdat"] == "") $inf["cdat"] = null;
+ if ($inf["vdat"] == "") $inf["vdat"] = null;
+ if ($inf["bdat"] == "") $inf["bdat"] = null;
+ if ($inf["fg"] == -1) $inf["fg"] = null;
+ if (isset($inf['betr']) && $inf['betr']) $betrag = dbformat_wert($inf['betr']); else $betrag = null;
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($infid)
+ { //UPDATE
+
+ $stmt -> prepare("UPDATE fhiiqm.Info SET
+ info_name_s = ?,
+ info_name_l = ?,
+ info_date = ?,
+ info_valid_from = ?,
+ info_valid_to = ?,
+ infotyp_ID = ?,
+ persknr = ?,
+ lang = ?,
+ info_freigabe_ID = ?,
+ info_sort = ?,
+ info_rel_ID = ?,
+ betrag = ?,
+ userid = ?
+ WHERE info_ID = $infid");
+ $stmt -> bind_param('sssssiisisids',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag,$userid);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
+ }
+ else
+ { //INSERT
+ $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
+ infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,betrag,userid) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('sssssiisisids', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag,$userid);
+ $result = $stmt -> execute();
+
+ if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
+ if ($result)
+ { // INSERT o.k.
+ // info_ID ermitteln
+ $infid = $dbc -> insertId();
+ }
+ }
+ } // stmt-Objekt
+ if ($result)
+ {
+ // upload Files
+ if ($infid) include ("inc/info_file.inc.php");
+ // n:m Tabellen INSERT
+ if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
+
+ }
+ if ($result && $retf && $ret && $reta && $retp && $retv) // INSERT/UPDATE Info
+ {
+ //Eingabe Daten, Upload File erfolgreich
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen gespeicherte Infodaten
+ if ($fname)
+ $ifile = $infid . "_" . $fname;
+ else
+ $ifile = $inf['ifname'];
+ include ("inc/info_dat_show.inc.php");
+ }
+ } // INSERT / UPDATE
+ echo "</div>";
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
+ echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Info erfassen\">Weitere Info erfassen</a></p>\n";
+
+ } // Form o.k. und submit
+?>
+
+</body>
+</html>
--- a/fhiiqm/keytyp_ma_search.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/keytyp_ma_search.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,186 +1,186 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 06/2013
- *
- * Schlüssel pro Mitarbeiter
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER['PHP_SELF']);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("kr",$_SESSION["recht"]) && !in_array("ke",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- $dbc = new dbconnection();
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
- <title>Mitarbeiter-Schlüssel Suche</title>
-
-</head>
-
-<body>
- <script>
- $(document).ready(function() {
- $("#ma").focus();
- $("#ma").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);
- $("#s").val(1);},
- close: function(event,ui){$("#f_makey").submit();}
- });
- $("#kt").autocomplete({
- source: "/fhiiqm/inc/keytyp_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#kt").val(ui.item.id);
- $("#s").val(1);},
- close: function(event,ui){$("#f_makey").submit();}
- });
- });
- </script>
-<?php
- echo " ";
- echo "<div class=\"float-br smaller sc\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r sc\"><img src=\"/fhiiqm/img/key.png\" border=\"0\" alt=\"key\" title=\"key\"/></div>\n";
-
- echo "<div align='center'><h3>Schlüssel - Mitarbeiter</h3></div>\n";
-
- $ky = $_POST["ky"]; // Parameter aus Form
-//print_r($ky); echo "<br />";
- $search = $_POST["search"];
- if (!$ky)
- {
- $ky['persknr'] = $_GET['p'];
- $ky['kt'] = $_GET['k'];
- }
- if (!$search) $search = $_GET["s"];
- If (!$search) $search = $ky["s"];
- if (!$search)
- {
-?>
- <div align="center">
- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_makey" id="f_makey" target="_self">
- <table width="30%" border="0" cellspacing="3" cellpadding="3">
- <tr>
- <td>Bitte Mitarbeiter</td>
- <td><input class="long20" type="text" name="ky[ma]" id="ma" value="<?php echo $ky['ma']; ?>"/></td>
- </tr>
- <tr>
- <td>oder Schlüsseltyp wählen</td>
- <td><input class="long20" type="text" name="ky[kt]" id="kt" value="<?php echo $ky['kt']; ?>"/>
- <br />jeweils mindestens 2 Zeichen eingeben
- <input type="hidden" name="ky[persknr]" id="pid" value="<?php echo $ky['persknr']; ?>"/>
- <input type="hidden" name="ky[s]" id="s" value="<?php echo $ky['s']; ?>"/>
- </td>
- </tr>
- </form>
- </div>
-<?php
- }
- else
- {
- echo "<div align='center'>\n";
- if ($ky["persknr"])
- {
- $sql = "SELECT km.keytyp_ID, key_level, pers_anz AS anzahl,pers_date, pers_bem,
- (CASE WHEN pers_action = 'get' THEN 'erhalten' WHEN pers_action = 'out' THEN 'zurück' ELSE 'verloren' END) AS status
- FROM fhiiqm.Mitarbeiter m
- INNER JOIN Keytyp_MA km ON m.persknr=km.persknr
- INNER JOIN Keytyp k ON km.keytyp_ID = k.keytyp_ID
- WHERE m.aktiv<2 AND m.persknr = ".$ky["persknr"].
- " ORDER BY key_level, pers_date";
- //echo "sql = $sql<br />";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- echo "<p><b>".$ky["ma"]." -> Schlüssel</b></p>\n";
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
- echo "<table width='35%' border='0' cellspacing='2' cellpadding='2'>\n";
- echo "<tr bgcolor='#68ACBF'><th>Schlüssel</th><th>Anzahl</th><th>Status</th><th>Datum</th><th>Bemerkung</th></tr>\n";
- foreach ($result as $row)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- $dat = new DateTime($row->pers_date);
- echo "<tr bgcolor='" . $bg . "'><td>$row->key_level - $row->keytyp_ID</td><td class='right'>$row->anzahl</td><td>$row->status</td><td>".$dat->format("d.m.Y")."</td>
- <td>".nl2br($row->pers_bem)."</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
- }
- else
- {
- echo "<p class='red'> An <b>".$ky["ma"]."</b> wurden keine Schlüssel vergeben!</p>";
- echo "</div>\n";
- echo "<br /> ";
- }
- }
- else
- {
- $sql = "SELECT km.keytyp_ID, key_level, pers_anz AS anzahl,pers_date, pers_bem,
- CONCAT (nachname, ', ',vorname, ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 0 THEN 'inaktiv' ELSE 'aktiv' END, ')') AS nvname,
- (CASE WHEN pers_action = 'get' THEN 'erhalten' WHEN pers_action = 'out' THEN 'zurück' ELSE 'verloren' END) AS status
- FROM fhiiqm.Mitarbeiter m
- INNER JOIN Keytyp_MA km ON m.persknr=km.persknr
- INNER JOIN Keytyp k ON km.keytyp_ID = k.keytyp_ID
- LEFT OUTER JOIN Abteilung a ON m.abt_tel=a.abt_ID
- WHERE m.aktiv<2 AND km.keytyp_ID = '".$ky["kt"].
- "' ORDER BY nvname, pers_date";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- $sql = "SELECT key_level FROM Keytyp WHERE keytyp_ID = '".$ky["kt"]."'";
- $keylevel = $dbc -> querySingleItem($sql);
- echo "<p><b>'$keylevel' - '".$ky["kt"]."' -> Mitarbeiter</b></p>\n";
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
- echo "<table width='40%' border='0' cellspacing='2' cellpadding='2'>\n";
- echo "<tr bgcolor='#68ACBF'><th>Mitarbeiter, Abteilung</th><th>Anzahl</th><th>Status</th><th>Datum</th><th>Bemerkung</th></tr>\n";
- foreach ($result as $row)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- $dat = new DateTime($row->pers_date);
- echo "<tr bgcolor='" . $bg . "'><td>$row->nvname</td><td class='right'>$row->anzahl</td><td>$row->status</td><td>".$dat->format("d.m.Y")."</td>
- <td>".nl2br($row->pers_bem)."</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
- }
- else
- {
- echo "<p class='red'> <b>".$ky["kt"]."</b> wurde nicht vergeben!</p>";
- echo "</div>\n";
- echo "<br /> ";
- }
-
- }
- echo " <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"neue Suche\" class=\"sc\">neue Mitarbeiter-Schlüsselsuche</a>\n";
- }
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 06/2013
+ *
+ * Schlüssel pro Mitarbeiter
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER['PHP_SELF']);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("kr",$_SESSION["recht"]) && !in_array("ke",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ $dbc = new dbconnection();
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+ <title>Mitarbeiter-Schlüssel Suche</title>
+
+</head>
+
+<body>
+ <script>
+ $(document).ready(function() {
+ $("#ma").focus();
+ $("#ma").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);
+ $("#s").val(1);},
+ close: function(event,ui){$("#f_makey").submit();}
+ });
+ $("#kt").autocomplete({
+ source: "/fhiiqm/inc/keytyp_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#kt").val(ui.item.id);
+ $("#s").val(1);},
+ close: function(event,ui){$("#f_makey").submit();}
+ });
+ });
+ </script>
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller sc\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r sc\"><img src=\"/fhiiqm/img/key.png\" border=\"0\" alt=\"key\" title=\"key\"/></div>\n";
+
+ echo "<div align='center'><h3>Schlüssel - Mitarbeiter</h3></div>\n";
+
+ $ky = $_POST["ky"]; // Parameter aus Form
+//print_r($ky); echo "<br />";
+ $search = $_POST["search"];
+ if (!$ky)
+ {
+ $ky['persknr'] = $_GET['p'];
+ $ky['kt'] = $_GET['k'];
+ }
+ if (!$search) $search = $_GET["s"];
+ If (!$search) $search = $ky["s"];
+ if (!$search)
+ {
+?>
+ <div align="center">
+ <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_makey" id="f_makey" target="_self">
+ <table width="30%" border="0" cellspacing="3" cellpadding="3">
+ <tr>
+ <td>Bitte Mitarbeiter</td>
+ <td><input class="long20" type="text" name="ky[ma]" id="ma" value="<?php echo $ky['ma']; ?>"/></td>
+ </tr>
+ <tr>
+ <td>oder Schlüsseltyp wählen</td>
+ <td><input class="long20" type="text" name="ky[kt]" id="kt" value="<?php echo $ky['kt']; ?>"/>
+ <br />jeweils mindestens 2 Zeichen eingeben
+ <input type="hidden" name="ky[persknr]" id="pid" value="<?php echo $ky['persknr']; ?>"/>
+ <input type="hidden" name="ky[s]" id="s" value="<?php echo $ky['s']; ?>"/>
+ </td>
+ </tr>
+ </form>
+ </div>
+<?php
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+ if ($ky["persknr"])
+ {
+ $sql = "SELECT km.keytyp_ID, key_level, pers_anz AS anzahl,pers_date, pers_bem, depot_ID,
+ (CASE WHEN pers_action = 'get' THEN 'erhalten' WHEN pers_action = 'out' THEN 'zurück' ELSE 'verloren' END) AS status
+ FROM fhiiqm.Mitarbeiter m
+ INNER JOIN Keytyp_MA km ON m.persknr=km.persknr
+ INNER JOIN Keytyp k ON km.keytyp_ID = k.keytyp_ID
+ WHERE m.aktiv<2 AND m.persknr = ".$ky["persknr"].
+ " ORDER BY key_level, pers_date";
+ //echo "sql = $sql<br />";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ echo "<p><b>".$ky["ma"]." -> Schlüssel</b></p>\n";
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ echo "<table width='40%' border='0' cellspacing='2' cellpadding='2'>\n";
+ echo "<tr bgcolor='#68ACBF'><th>Schlüssel</th><th>Anzahl</th><th>Status</th><th>Datum</th><th>von/an Depot</th><th>Bemerkung</th></tr>\n";
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ $dat = new DateTime($row->pers_date);
+ echo "<tr bgcolor='" . $bg . "'><td>$row->key_level - $row->keytyp_ID</td><td class='right'>$row->anzahl</td><td>$row->status</td><td>".$dat->format("d.m.Y")."</td>
+ <td>$row->depot_ID</td><td>".nl2br($row->pers_bem)."</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+ }
+ else
+ {
+ echo "<p class='red'> An <b>".$ky["ma"]."</b> wurden keine Schlüssel vergeben!</p>";
+ echo "</div>\n";
+ echo "<br /> ";
+ }
+ }
+ else
+ {
+ $sql = "SELECT km.keytyp_ID, key_level, pers_anz AS anzahl,pers_date, pers_bem, depot_ID,
+ CONCAT (nachname, ', ',vorname, ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 0 THEN 'inaktiv' ELSE 'aktiv' END, ')') AS nvname,
+ (CASE WHEN pers_action = 'get' THEN 'erhalten' WHEN pers_action = 'out' THEN 'zurück' ELSE 'verloren' END) AS status
+ FROM fhiiqm.Mitarbeiter m
+ INNER JOIN Keytyp_MA km ON m.persknr=km.persknr
+ INNER JOIN Keytyp k ON km.keytyp_ID = k.keytyp_ID
+ LEFT OUTER JOIN Abteilung a ON m.abt_tel=a.abt_ID
+ WHERE m.aktiv<2 AND km.keytyp_ID = '".$ky["kt"].
+ "' ORDER BY nvname, pers_date";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ $sql = "SELECT key_level FROM Keytyp WHERE keytyp_ID = '".$ky["kt"]."'";
+ $keylevel = $dbc -> querySingleItem($sql);
+ echo "<p><b>'$keylevel' - '".$ky["kt"]."' -> Mitarbeiter</b></p>\n";
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ echo "<table width='40%' border='0' cellspacing='2' cellpadding='2'>\n";
+ echo "<tr bgcolor='#68ACBF'><th>Mitarbeiter, Abteilung</th><th>Anzahl</th><th>Status</th><th>Datum</th><th>von/an Depot</th><th>Bemerkung</th></tr>\n";
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ $dat = new DateTime($row->pers_date);
+ echo "<tr bgcolor='" . $bg . "'><td>$row->nvname</td><td class='right'>$row->anzahl</td><td>$row->status</td><td>".$dat->format("d.m.Y")."</td>
+ <td>$row->depot_ID</td><td>".nl2br($row->pers_bem)."</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+ }
+ else
+ {
+ echo "<p class='red'> <b>".$ky["kt"]."</b> wurde nicht vergeben!</p>";
+ echo "</div>\n";
+ echo "<br /> ";
+ }
+
+ }
+ echo " <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"neue Suche\" class=\"sc\">neue Mitarbeiter-Schlüsselsuche</a>\n";
+ }
+?>
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/keytyp_report.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/keytyp_report.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,71 +1,78 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 06/2013
- *
- * Reportauswahl Keytyp
- *
- */
-
-
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("kr",$_SESSION["recht"]) && !in_array("ke",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
- <link href="css/navio.css" rel="STYLESHEET" type="TEXT/CSS" />
- <meta name="author" content="Bettina Schwarzer,FHI" />
-
- <title>Reports Keytyp</title>
-</head>
-
-<body>
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r sc\"><img src=\"/fhiiqm/img/key.png\" border=\"0\" alt=\"Berichte Keytyp\" title=\"Berichte Schlüsseltyp\"/></div>\n";
-?>
- <h3> Berichte Schlüsseltyp</h3>
- <div align="center">
- <table width="94%" cellspacing="4" cellpadding="4">
- <tr>
- <td class="bigger">
- <a href="/fhiiqm/report/keytyp_dep_anz_report.php" title="Keytypbestand-Depot">Schlüsseltyp-Bestand - Depot</a>
- <br /> Auswahl: Depot, Schlüsseltyp
- <br /> Ansicht: Depot, Schlüsseltyp, Anzahl Zugang, Abgang, Verlust, Bestand
- </td>
- </tr>
- <tr>
- <td class="bigger">
- <a href="/fhiiqm/report/keytyp_dep_history_report.php" title="Keytyphistorie-Depot">Schlüsseltyp-Historie - Depot</a>
- <br /> Auswahl: Depot, Schlüsseltyp
- <br /> Ansicht: Schlüsseltyp, Depot, Datum, Aktion, Anzahl, Bemerkung
- </td>
- </tr>
- </table>
- </div>
-
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 06/2013
+ *
+ * Reportauswahl Keytyp
+ *
+ */
+
+
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("kr",$_SESSION["recht"]) && !in_array("ke",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
+ <link href="css/navio.css" rel="STYLESHEET" type="TEXT/CSS" />
+ <meta name="author" content="Bettina Schwarzer,FHI" />
+
+ <title>Reports Keytyp</title>
+</head>
+
+<body>
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r sc\"><img src=\"/fhiiqm/img/key.png\" border=\"0\" alt=\"Berichte Keytyp\" title=\"Berichte Schlüsseltyp\"/></div>\n";
+?>
+ <h3> Berichte Schlüsseltyp</h3>
+ <div align="center">
+ <table width="94%" cellspacing="4" cellpadding="4">
+ <tr>
+ <td class="bigger">
+ <a href="/fhiiqm/report/keytyp_dep_anz_report.php" title="Keytypbestand-Depot">Schlüsseltyp-Bestand - Depot</a>
+ <br /> Auswahl: Depot, Schlüsseltyp
+ <br /> Ansicht: Depot, Schlüsseltyp, Anzahl Zugang, Abgang, Verlust, Bestand
+ </td>
+ </tr>
+ <tr>
+ <td class="bigger">
+ <a href="/fhiiqm/report/keytyp_dep_history_report.php" title="Keytyphistorie-Depot">Schlüsseltyp-Historie - Depot</a>
+ <br /> Auswahl: Depot, Schlüsseltyp
+ <br /> Ansicht: Schlüsseltyp, Depot, Datum, Aktion, Anzahl, Bemerkung
+ </td>
+ </tr>
+ <tr>
+ <td class="bigger">
+ <a href="/fhiiqm/report/keytyp_bestand_all_report.php" title="Keytypbestand all">Schlüsseltyp-Bestand - gesamt</a>
+ <br /> Auswahl: Depot, Schlüsseltyp
+ <br /> Ansicht: Schlüsseltyp, Level, Besitzer, Anzahl
+ </td>
+ </tr>
+ </table>
+ </div>
+
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/laser_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/laser_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,390 +1,393 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 12/2011, 01/2012
- *
- * Laser INSERT, UPDATE, DELETE, COPY
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("lr",$_SESSION["recht"]) && !in_array("le",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
-
- $la = $_POST["la"];
- $laid = $_GET["i"];
- $copy = $_GET["c"];
- $sub = $_POST["eintragen"];
- $del = $_POST["del"];
- $dup = $_POST["dup"];
- if (!$dup) $dup = $_GET["dp"];
- $ok = $_POST["ok"];
- if (!$la['okn']) $ok=false;
- $duptext="";
- $start = $_GET["st"];
- $zeil = $_GET["z"];
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- // $_GET-Parameter zurück zur Laserliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
-
- if ($dup)
- { // Anlage duplizieren
- include_once ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/func_lib.inc.php");
- $tab = "Laser";
- $key = "las_ID";
- $val = $laid;
-// $ret=1;
- $ret = duplicate_record ($tab, $key, $val);
- if ($ret)
- {
- $laid=$ret;
- $addr = $_SERVER["PHP_SELF"] . "?i=$laid&c=1&$getp";
- header("Location: $addr");
- exit;
- }
- else $duptext = " - Fehler beim Duplizieren von ". $la["lbez"];
- }
-
-?>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
- <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
-<!--
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
--->
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
- <title>Laser</title>
- </head>
-
- <body>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/laser.png\" border=\"0\" alt=\"Laser\" title=\"Laser\"/></div>\n";
-?>
-
- <div align='center'>
-
- <script>
- $(document).ready(function() {
- $("#lbez").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php?s=a",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
- $("input").persknr("long20").addClass("long20");
- });
- </script>
-
- <?php
-// print_r($al);
-
- if ($laid) $text = "editieren"; else $text = "erfassen";
- if ($copy) $duptext = " (Kopie)";
- echo "<h3>Laser $text$duptext<h3>";
-
- echo "</div>\n";
-
- if (!$ok || (!$sub && !$del && !$dup))
- {
- if ($laid && (!$sub || !$del) && !isset($la))
- { // update
- $sql = "SELECT las_ID, las_bez, las_welle_von, las_welle_bis,
- las_art_ID, las_klasse_ID, las_typ_ID, leistung, einheit_leistung,
- apertur, einheit_apertur, energie, einheit_energie, frequenz, einheit_frequenz,
- impulsbreite, einheit_impulsbreite, l.las_hersteller_ID, schutzst_ID,
- l.aktiv, l.persknr, l.raum_ID, geb_ID, las_info,
- CONCAT(nachname,', ',vorname) AS vname, las_hersteller_bez,
- inventar_nr,maxleistung, einheit_maxleist,schutzst_od_ID,las_ref_ID,l.timestamp
- FROM fhiiqm.Laser l LEFT OUTER JOIN fhiiqm.Mitarbeiter m
- ON l.persknr=m.persknr LEFT OUTER JOIN fhiiqm.Laser_Hersteller h
- ON l.las_hersteller_ID=h.las_hersteller_ID LEFT OUTER JOIN fhiiqm.Raum r
- ON l.raum_ID=r.Raum_ID
- WHERE las_ID = '$laid'";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $la["lid"] = $laid;
- $la["lbez"] = $row->las_bez;
-// $la['wvon'] = str_replace(".",",",$row->las_welle_von);
- $la['wvon'] = str_replace(".",",",str_replace(".00","",$row->las_welle_von));
- $la['wbis'] = str_replace(".",",",str_replace(".00","",$row->las_welle_bis));
- $la["lart"] = ($row->las_art_ID) ? $row->las_art_ID : -1;
- $la['lkla'] = ($row->las_klasse_ID) ? $row->las_klasse_ID : -1;
- $la['ltyp'] = ($row->las_typ_ID) ? $row->las_typ_ID : -1;
- $la['leist'] = str_replace(".",",",str_replace(".00","",$row->leistung));
- $la['eleist'] = $row->einheit_leistung;
- $la["apt"] = str_replace(".",",",str_replace(".00","",$row->apertur));
- $la["eapt"] = $row->einheit_apertur;
- $la["eng"] = str_replace(".",",",str_replace(".00","",$row->energie));
- $la["eeng"] = $row->einheit_energie;
- $la["frq"] = str_replace(".",",",str_replace(".00","",$row->frequenz));
- $la["efrq"] = $row->einheit_frequenz;
- $la["ipb"] = str_replace(".",",",str_replace(".00","",$row->impulsbreite));
- $la["eipb"] = $row->einheit_impulsbreite;
- $la["akt"] = $row->aktiv;
- $la["hstid"] = $row->las_hersteller_ID;
- if (!$la["hstid"]) $la["hstid"] = -1;
- $la["suid"] = ($row->schutzst_ID)? $row->schutzst_ID : -1;
- $la["akt"] = $row->aktiv;
- $la["persknr"] = $row->vname;
- $la["pid"] = ($row->persknr) ? $row->persknr : null;
- $la["geb"] = $row->geb_ID;
- $la["raum"] = ($row->raum_ID) ? $row->raum_ID : -1;
- $la["linfo"] = $row->las_info;
- $la["invnr"] = $row->inventar_nr;
- $la["leistmax"] = str_replace(".",",",str_replace(".00","",$row->maxleistung));
- $la["eleistmax"]= $row->einheit_maxleist;
- $la["suodid"] = $row->schutzst_od_ID;
- $la["lidref"] = $row->las_ref_ID;
- $la["tstmp"] = $row->timestamp;
- }
- }
- }
- include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/laser_form.inc.php");
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?";
- elseif ($del)
- $frage = "Laser wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo " /></td>\n</tr>\n";
- }
- if (!is_null($_SESSION["recht"]) && in_array("le",$_SESSION["recht"]))
- {
- echo "
- <tr><td> </td>\n
- <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
- if ($laid)
- {
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
- }
- echo "</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"laser_flist.php?$getp\" target=\"_self\" title=\"Laser\">« zur Laserliste</a></p>\n";
- echo "</form>\n";
-
-
- }
- else
- {
- echo "<div align='center'>\n";
-
- if ($del)
- {
- $sql = "DELETE FROM Laser WHERE las_ID = '$laid'";
- $retld = $dbc -> execute($sql);
- if ($retld)
- {
- echo "<p class='green'><b>DELETE: Daten zu '".$la["lbez"]."' wurden erfolgreich gelöscht.</b></p>\n";
- include ("inc/laser_dat_show.inc.php");
- }
- else
- {
- echo "<p class='red'><b>DELETE: Daten zu '".$la["lbez"]."' konnten nicht gelöscht werden!</b></p>\n";
- echo "sql = $sql<br />";
- echo "error DELETE: " . $dbc->error . "<br />";
- }
- }
- else //INSERT oder UPDATE
- {
- if ($la["lbez"]) $la["lbez"] = substr($la["lbez"],0,250); else $la["lbez"] = null;
- if ($la["linfo"]) $la["linfo"] = substr($la["linfo"],0,500); else $la["linfo"] = null;
- if ($la["lart"] == -1) $la["lart"] = null;
- if ($la["lkla"] == -1) $la["lkla"] = null;
- if ($la["ltyp"] == -1) $la["ltyp"] = null;
- if ($la["suid"] == -1) $la["suid"] = null;
- if ($la["suodid"] == -1) $la["suodid"] = null;
- if ($la["lidref"] == -1) $la["lidref"] = null;
- if ($la["raum"] == -1) $la["raum"] = null;
-// print_r($la); echo "<br /><br />";
-
- if ($la["hstid"] == -1)
- {
- if ($la["herst"] > "!") // neuer Hersteller?
- {
- $sql = "SELECT las_hersteller_ID FROM Laser_Hersteller WHERE las_hersteller_bez = '" . ltrim($la["herst"]) . "'";
- if ($res = $dbc -> queryObjectArray($sql))
- { // Hersteller vorhanden
- foreach ($res as $row)
- $la["hstid"] = $row->las_hersteller_ID;
- }
- else
- { // Hersteller neu
- $sql = "INSERT INTO Laser_Hersteller (las_hersteller_bez) VALUES (LEFT(TRIM('" . $la["herst"] . "'),50))";
- $reth = $dbc -> execute($sql);
- if ($reth) $la["hstid"] = $dbc -> insertId(); else $la["hstid"] = null;
- }
- }
- else
- $la["hstid"] = null;
- }
-
- if ($la["lart"] == -1)
- {
- if ($la["lartnew"] > "!") // neue Laserart?
- {
- $sql = "SELECT las_art_ID FROM Laser_Art WHERE las_art_bez = '" . ltrim($la["lartnew"]) . "'";
- if ($res = $dbc -> queryObjectArray($sql))
- { // Hersteller vorhanden
- foreach ($res as $row)
- $la["lart"] = $row->las_art_ID;
- }
- else
- { // Laserart neu
- $sql = "INSERT INTO Laser_Art (las_art_bez) VALUES (LEFT(TRIM('" . $la["lartnew"] . "'),50))";
- $reth = $dbc -> execute($sql);
- if ($reth) $la["lart"] = $dbc -> insertId(); else $la["lart"] = null;
- }
- }
- else
- $la["lart"] = null;
- }
-
- foreach ($la as $key=>$value)
- {
- if (is_null($value) || $value < "!") $la["$key"] = null;
- }
- // "," -> "." fuer decimal-Felder
- if (is_null($la["persknr"])) $la[pid] = null;
- if (is_numeric(str_replace(",",".",$la["wvon"]))) $la["wvon"] = round(str_replace(",",".",$la["wvon"]),2);
- if (is_numeric(str_replace(",",".",$la["wbis"]))) $la["wbis"] = round(str_replace(",",".",$la["wbis"]),2);
- if (is_numeric(str_replace(",",".",$la["leist"]))) $la["leist"] = round(str_replace(",",".",$la["leist"]),2);
- if (is_numeric(str_replace(",",".",$la["leistmax"]))) $la["leistmax"] = round(str_replace(",",".",$la["leistmax"]),2);
- if (is_numeric(str_replace(",",".",$la["eng"]))) $la["eng"] = round(str_replace(",",".",$la["eng"]),2);
- if (is_numeric(str_replace(",",".",$la["apt"]))) $la["apt"] = round(str_replace(",",".",$la["apt"]),2);
- if (is_numeric(str_replace(",",".",$la["frq"]))) $la["frq"] = round(str_replace(",",".",$la["frq"]),2);
- if (is_numeric(str_replace(",",".",$la["ipb"]))) $la["ipb"] = round(str_replace(",",".",$la["ipb"]),2);
-
- // Einheiten = NULL, wenn decimal-Felder NULL
- if (is_null($la['leist'])) $la['eleist'] = null;
- if (is_null($la['leistmax'])) $la['eleistmax'] = null;
- if (is_null($la['eng'])) $la['eeng'] = null;
- if (is_null($la['apt'])) $la['eapt'] = null;
- if (is_null($la['frq'])) $la['efrq'] = null;
- if (is_null($la['ipb'])) $la['eipb'] = null;
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($laid)
- {
- //update
- $stmt -> prepare("UPDATE fhiiqm.Laser SET
- las_bez = ?,
- las_welle_von = ?,
- las_welle_bis = ?,
- las_art_ID = ?,
- las_klasse_ID = ?,
- las_typ_ID = ?,
- leistung = ?,
- einheit_leistung = ?,
- energie = ?,
- einheit_energie = ?,
- apertur = ?,
- einheit_apertur = ?,
- frequenz = ?,
- einheit_frequenz = ?,
- impulsbreite = ?,
- einheit_impulsbreite = ?,
- las_hersteller_ID = ?,
- schutzst_ID = ?,
- aktiv = ?,
- persknr = ?,
- raum_ID = ?,
- las_info = ?,
- inventar_nr = ?,
- maxleistung = ?,
- einheit_maxleist = ?,
- schutzst_od_ID = ?,
- las_ref_ID = ?
- WHERE las_ID = '$laid'");
- $stmt -> bind_param('sddisidididididiiiiiissdiii',$la["lbez"],$la['wvon'],$la['wbis'],$la["lart"],$la['lkla'],
- $la['ltyp'],$la['leist'],$la["eleist"],$la["eng"],$la["eeng"],$la["apt"],$la["eapt"],$la["frq"],$la["efrq"],
- $la["ipb"],$la["eipb"],$la["hstid"],$la["suid"],$la["akt"],$la["pid"],$la["raum"],$la["linfo"],
- $la["invnr"],$la["leistmax"],$la["eleistmax"],$la["suodid"],$la["lidref"]);
-
- $res = $stmt -> execute();
- if ($stmt->error) echo "UPDATE Laser, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
- if ($res)
- echo "<p class='green'><b>UPDATE: Daten zu '".$la["lbez"]."' wurden erfolgreich gespeichert.</b></p>\n";
- else
- echo "<p class='red'><b>UPDATE: Daten zu '".$la["lbez"]."' konnten nicht gespeichert werden!</b></p>\n";
-
- }
- else
- {
- //insert
- $stmt -> prepare("INSERT INTO fhiiqm.Laser (las_bez, las_welle_von, las_welle_bis, las_art_ID,
- las_klasse_ID, las_typ_ID, leistung, einheit_leistung, energie, einheit_energie,
- apertur, einheit_apertur, frequenz, einheit_frequenz, impulsbreite, einheit_impulsbreite,
- las_hersteller_ID, schutzst_ID, aktiv, persknr, raum_ID, las_info,
- inventar_nr,maxleistung, einheit_maxleist,schutzst_od_ID,las_ref_ID)
- VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
- $stmt -> bind_param('sddisidididididiiiiiissdiii',$la["lbez"],$la['wvon'],$la['wbis'],$la["lart"],$la['lkla'],
- $la['ltyp'],$la['leist'],$la["eleist"],$la["eng"],$la["eeng"],$la["apt"],$la["eapt"],$la["frq"],$la["efrq"],
- $la["ipb"],$la["eipb"],$la["hstid"],$la["suid"],$la["akt"],$la["pid"],$la["raum"],$la["linfo"],
- $la["invnr"],$la["leistmax"],$la["eleistmax"],$la["suodid"],$la["lidref"]);
- $res = $stmt -> execute();
-// print_r($stmt); echo "<br /><br />";
- if ($stmt->error) echo "INSERT Laser, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
- if ($res)
- {
- $la["lid"] = $dbc -> insertId();
- echo "<p class='green'><b>INSERT: Daten zu '".$la["lbez"]."' wurden erfolgreich gespeichert.</b></p>\n";
- }
- else
- echo "<p class='red'><b>INSERT: Daten zu '".$la["lbez"]."' konnten nicht gespeichert werden!</b></p>\n";
- }
- if ($res) include ("inc/laser_dat_show.inc.php");
- }
-
- }
- echo "</div>\n";
- echo "<p class=\"sc\"> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Laser erfassen\">Weiteren Laser erfassen</a></p>\n";
- echo "<p class=\"sc\"> <a href=\"laser_flist.php?$getp\" target=\"_self\" title=\"Laser\">Laserliste</a></p>\n";
- }
- ?>
- </body>
- </html>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 12/2011, 01/2012
+ *
+ * Laser INSERT, UPDATE, DELETE, COPY
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("lr",$_SESSION["recht"]) && !in_array("le",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+
+ $la = $_POST["la"];
+ $laid = $_GET["i"];
+ $copy = $_GET["c"];
+ $sub = $_POST["eintragen"];
+ $del = $_POST["del"];
+ $dup = $_POST["dup"];
+ if (!$dup) $dup = $_GET["dp"];
+ $ok = $_POST["ok"];
+ if (!$la['okn']) $ok=false;
+ $duptext="";
+ $start = $_GET["st"];
+ $zeil = $_GET["z"];
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ // $_GET-Parameter zurück zur Laserliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
+
+ if ($dup)
+ { // Anlage duplizieren
+ include_once ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/func_lib.inc.php");
+ $tab = "Laser";
+ $key = "las_ID";
+ $val = $laid;
+// $ret=1;
+ $ret = duplicate_record ($tab, $key, $val);
+ if ($ret)
+ {
+ $laid=$ret;
+ $addr = $_SERVER["PHP_SELF"] . "?i=$laid&c=1&$getp";
+ header("Location: $addr");
+ exit;
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $la["lbez"];
+ }
+
+?>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
+ <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
+<!--
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
+-->
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+ <title>Laser</title>
+ </head>
+
+ <body>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/laser.png\" border=\"0\" alt=\"Laser\" title=\"Laser\"/></div>\n";
+?>
+
+ <div align='center'>
+
+ <script>
+ $(document).ready(function() {
+ $("#lbez").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php?s=a",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("input").persknr("long20").addClass("long20");
+ });
+ </script>
+
+ <?php
+// print_r($al);
+
+ if ($laid) $text = "editieren"; else $text = "erfassen";
+ if ($copy) $duptext = " (Kopie)";
+ echo "<h3>Laser $text$duptext<h3>";
+
+ echo "</div>\n";
+
+ if (!$ok || (!$sub && !$del && !$dup))
+ {
+ if ($laid && (!$sub || !$del) && !isset($la))
+ { // update
+ $sql = "SELECT las_ID, las_bez, las_welle_von, las_welle_bis,
+ las_art_ID, las_klasse_ID, las_typ_ID, leistung, einheit_leistung,
+ apertur, einheit_apertur, energie, einheit_energie, frequenz, einheit_frequenz,
+ impulsbreite, einheit_impulsbreite, l.las_hersteller_ID, schutzst_ID,
+ l.aktiv, l.persknr, l.raum_ID, geb_ID, las_info,
+ CONCAT(nachname,', ',vorname) AS vname, las_hersteller_bez,
+ inventar_nr,maxleistung, einheit_maxleist,schutzst_od_ID,las_ref_ID,l.timestamp,l.userid
+ FROM fhiiqm.Laser l LEFT OUTER JOIN fhiiqm.Mitarbeiter m
+ ON l.persknr=m.persknr LEFT OUTER JOIN fhiiqm.Laser_Hersteller h
+ ON l.las_hersteller_ID=h.las_hersteller_ID LEFT OUTER JOIN fhiiqm.Raum r
+ ON l.raum_ID=r.Raum_ID
+ WHERE las_ID = '$laid'";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $la["lid"] = $laid;
+ $la["lbez"] = $row->las_bez;
+// $la['wvon'] = str_replace(".",",",$row->las_welle_von);
+ $la['wvon'] = str_replace(".",",",str_replace(".00","",$row->las_welle_von));
+ $la['wbis'] = str_replace(".",",",str_replace(".00","",$row->las_welle_bis));
+ $la["lart"] = ($row->las_art_ID) ? $row->las_art_ID : -1;
+ $la['lkla'] = ($row->las_klasse_ID) ? $row->las_klasse_ID : -1;
+ $la['ltyp'] = ($row->las_typ_ID) ? $row->las_typ_ID : -1;
+ $la['leist'] = str_replace(".",",",str_replace(".00","",$row->leistung));
+ $la['eleist'] = $row->einheit_leistung;
+ $la["apt"] = str_replace(".",",",str_replace(".00","",$row->apertur));
+ $la["eapt"] = $row->einheit_apertur;
+ $la["eng"] = str_replace(".",",",str_replace(".00","",$row->energie));
+ $la["eeng"] = $row->einheit_energie;
+ $la["frq"] = str_replace(".",",",str_replace(".00","",$row->frequenz));
+ $la["efrq"] = $row->einheit_frequenz;
+ $la["ipb"] = str_replace(".",",",str_replace(".00","",$row->impulsbreite));
+ $la["eipb"] = $row->einheit_impulsbreite;
+ $la["akt"] = $row->aktiv;
+ $la["hstid"] = $row->las_hersteller_ID;
+ if (!$la["hstid"]) $la["hstid"] = -1;
+ $la["suid"] = ($row->schutzst_ID)? $row->schutzst_ID : -1;
+ $la["akt"] = $row->aktiv;
+ $la["persknr"] = $row->vname;
+ $la["pid"] = ($row->persknr) ? $row->persknr : null;
+ $la["geb"] = $row->geb_ID;
+ $la["raum"] = ($row->raum_ID) ? $row->raum_ID : -1;
+ $la["linfo"] = $row->las_info;
+ $la["invnr"] = $row->inventar_nr;
+ $la["leistmax"] = str_replace(".",",",str_replace(".00","",$row->maxleistung));
+ $la["eleistmax"]= $row->einheit_maxleist;
+ $la["suodid"] = $row->schutzst_od_ID;
+ $la["lidref"] = $row->las_ref_ID;
+ $la["tstmp"] = $row->timestamp;
+ $la["uid"] = $row->userid;
+ }
+ }
+ }
+ include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/laser_form.inc.php");
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?";
+ elseif ($del)
+ $frage = "Laser wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo " /></td>\n</tr>\n";
+ }
+ if (!is_null($_SESSION["recht"]) && in_array("le",$_SESSION["recht"]))
+ {
+ echo "
+ <tr><td> </td>\n
+ <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
+ if ($laid)
+ {
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
+ }
+ echo "</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"laser_flist.php?$getp\" target=\"_self\" title=\"Laser\">« zur Laserliste</a></p>\n";
+ echo "</form>\n";
+
+
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+ $userid = $_SESSION["userid"];
+
+ if ($del)
+ {
+ $sql = "DELETE FROM Laser WHERE las_ID = '$laid'";
+ $retld = $dbc -> execute($sql);
+ if ($retld)
+ {
+ echo "<p class='green'><b>DELETE: Daten zu '".$la["lbez"]."' wurden erfolgreich gelöscht.</b></p>\n";
+ include ("inc/laser_dat_show.inc.php");
+ }
+ else
+ {
+ echo "<p class='red'><b>DELETE: Daten zu '".$la["lbez"]."' konnten nicht gelöscht werden!</b></p>\n";
+ echo "sql = $sql<br />";
+ echo "error DELETE: " . $dbc->error . "<br />";
+ }
+ }
+ else //INSERT oder UPDATE
+ {
+ if ($la["lbez"]) $la["lbez"] = substr($la["lbez"],0,250); else $la["lbez"] = null;
+ if ($la["linfo"]) $la["linfo"] = substr($la["linfo"],0,500); else $la["linfo"] = null;
+ if ($la["lart"] == -1) $la["lart"] = null;
+ if ($la["lkla"] == -1) $la["lkla"] = null;
+ if ($la["ltyp"] == -1) $la["ltyp"] = null;
+ if ($la["suid"] == -1) $la["suid"] = null;
+ if ($la["suodid"] == -1) $la["suodid"] = null;
+ if ($la["lidref"] == -1) $la["lidref"] = null;
+ if ($la["raum"] == -1) $la["raum"] = null;
+// print_r($la); echo "<br /><br />";
+
+ if ($la["hstid"] == -1)
+ {
+ if ($la["herst"] > "!") // neuer Hersteller?
+ {
+ $sql = "SELECT las_hersteller_ID FROM Laser_Hersteller WHERE las_hersteller_bez = '" . ltrim($la["herst"]) . "'";
+ if ($res = $dbc -> queryObjectArray($sql))
+ { // Hersteller vorhanden
+ foreach ($res as $row)
+ $la["hstid"] = $row->las_hersteller_ID;
+ }
+ else
+ { // Hersteller neu
+ $sql = "INSERT INTO Laser_Hersteller (las_hersteller_bez) VALUES (LEFT(TRIM('" . $la["herst"] . "'),50))";
+ $reth = $dbc -> execute($sql);
+ if ($reth) $la["hstid"] = $dbc -> insertId(); else $la["hstid"] = null;
+ }
+ }
+ else
+ $la["hstid"] = null;
+ }
+
+ if ($la["lart"] == -1)
+ {
+ if ($la["lartnew"] > "!") // neue Laserart?
+ {
+ $sql = "SELECT las_art_ID FROM Laser_Art WHERE las_art_bez = '" . ltrim($la["lartnew"]) . "'";
+ if ($res = $dbc -> queryObjectArray($sql))
+ { // Hersteller vorhanden
+ foreach ($res as $row)
+ $la["lart"] = $row->las_art_ID;
+ }
+ else
+ { // Laserart neu
+ $sql = "INSERT INTO Laser_Art (las_art_bez) VALUES (LEFT(TRIM('" . $la["lartnew"] . "'),50))";
+ $reth = $dbc -> execute($sql);
+ if ($reth) $la["lart"] = $dbc -> insertId(); else $la["lart"] = null;
+ }
+ }
+ else
+ $la["lart"] = null;
+ }
+
+ foreach ($la as $key=>$value)
+ {
+ if (is_null($value) || $value < "!") $la["$key"] = null;
+ }
+ // "," -> "." fuer decimal-Felder
+ if (is_null($la["persknr"])) $la[pid] = null;
+ if (is_numeric(str_replace(",",".",$la["wvon"]))) $la["wvon"] = round(str_replace(",",".",$la["wvon"]),2);
+ if (is_numeric(str_replace(",",".",$la["wbis"]))) $la["wbis"] = round(str_replace(",",".",$la["wbis"]),2);
+ if (is_numeric(str_replace(",",".",$la["leist"]))) $la["leist"] = round(str_replace(",",".",$la["leist"]),2);
+ if (is_numeric(str_replace(",",".",$la["leistmax"]))) $la["leistmax"] = round(str_replace(",",".",$la["leistmax"]),2);
+ if (is_numeric(str_replace(",",".",$la["eng"]))) $la["eng"] = round(str_replace(",",".",$la["eng"]),2);
+ if (is_numeric(str_replace(",",".",$la["apt"]))) $la["apt"] = round(str_replace(",",".",$la["apt"]),2);
+ if (is_numeric(str_replace(",",".",$la["frq"]))) $la["frq"] = round(str_replace(",",".",$la["frq"]),2);
+ if (is_numeric(str_replace(",",".",$la["ipb"]))) $la["ipb"] = round(str_replace(",",".",$la["ipb"]),2);
+
+ // Einheiten = NULL, wenn decimal-Felder NULL
+ if (is_null($la['leist'])) $la['eleist'] = null;
+ if (is_null($la['leistmax'])) $la['eleistmax'] = null;
+ if (is_null($la['eng'])) $la['eeng'] = null;
+ if (is_null($la['apt'])) $la['eapt'] = null;
+ if (is_null($la['frq'])) $la['efrq'] = null;
+ if (is_null($la['ipb'])) $la['eipb'] = null;
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($laid)
+ {
+ //update
+ $stmt -> prepare("UPDATE fhiiqm.Laser SET
+ las_bez = ?,
+ las_welle_von = ?,
+ las_welle_bis = ?,
+ las_art_ID = ?,
+ las_klasse_ID = ?,
+ las_typ_ID = ?,
+ leistung = ?,
+ einheit_leistung = ?,
+ energie = ?,
+ einheit_energie = ?,
+ apertur = ?,
+ einheit_apertur = ?,
+ frequenz = ?,
+ einheit_frequenz = ?,
+ impulsbreite = ?,
+ einheit_impulsbreite = ?,
+ las_hersteller_ID = ?,
+ schutzst_ID = ?,
+ aktiv = ?,
+ persknr = ?,
+ raum_ID = ?,
+ las_info = ?,
+ inventar_nr = ?,
+ maxleistung = ?,
+ einheit_maxleist = ?,
+ schutzst_od_ID = ?,
+ las_ref_ID = ?,
+ userid = ?
+ WHERE las_ID = '$laid'");
+ $stmt -> bind_param('sddisidididididiiiiiissdiiis',$la["lbez"],$la['wvon'],$la['wbis'],$la["lart"],$la['lkla'],
+ $la['ltyp'],$la['leist'],$la["eleist"],$la["eng"],$la["eeng"],$la["apt"],$la["eapt"],$la["frq"],$la["efrq"],
+ $la["ipb"],$la["eipb"],$la["hstid"],$la["suid"],$la["akt"],$la["pid"],$la["raum"],$la["linfo"],
+ $la["invnr"],$la["leistmax"],$la["eleistmax"],$la["suodid"],$la["lidref"],$userid);
+
+ $res = $stmt -> execute();
+ if ($stmt->error) echo "UPDATE Laser, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
+ if ($res)
+ echo "<p class='green'><b>UPDATE: Daten zu '".$la["lbez"]."' wurden erfolgreich gespeichert.</b></p>\n";
+ else
+ echo "<p class='red'><b>UPDATE: Daten zu '".$la["lbez"]."' konnten nicht gespeichert werden!</b></p>\n";
+
+ }
+ else
+ {
+ //insert
+ $stmt -> prepare("INSERT INTO fhiiqm.Laser (las_bez, las_welle_von, las_welle_bis, las_art_ID,
+ las_klasse_ID, las_typ_ID, leistung, einheit_leistung, energie, einheit_energie,
+ apertur, einheit_apertur, frequenz, einheit_frequenz, impulsbreite, einheit_impulsbreite,
+ las_hersteller_ID, schutzst_ID, aktiv, persknr, raum_ID, las_info,
+ inventar_nr,maxleistung, einheit_maxleist,schutzst_od_ID,las_ref_ID,userid)
+ VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('sddisidididididiiiiiissdiiis',$la["lbez"],$la['wvon'],$la['wbis'],$la["lart"],$la['lkla'],
+ $la['ltyp'],$la['leist'],$la["eleist"],$la["eng"],$la["eeng"],$la["apt"],$la["eapt"],$la["frq"],$la["efrq"],
+ $la["ipb"],$la["eipb"],$la["hstid"],$la["suid"],$la["akt"],$la["pid"],$la["raum"],$la["linfo"],
+ $la["invnr"],$la["leistmax"],$la["eleistmax"],$la["suodid"],$la["lidref"],$userid);
+ $res = $stmt -> execute();
+// print_r($stmt); echo "<br /><br />";
+ if ($stmt->error) echo "INSERT Laser, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
+ if ($res)
+ {
+ $la["lid"] = $dbc -> insertId();
+ echo "<p class='green'><b>INSERT: Daten zu '".$la["lbez"]."' wurden erfolgreich gespeichert.</b></p>\n";
+ }
+ else
+ echo "<p class='red'><b>INSERT: Daten zu '".$la["lbez"]."' konnten nicht gespeichert werden!</b></p>\n";
+ }
+ if ($res) include ("inc/laser_dat_show.inc.php");
+ }
+
+ }
+ echo "</div>\n";
+ echo "<p class=\"sc\"> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Laser erfassen\">Weiteren Laser erfassen</a></p>\n";
+ echo "<p class=\"sc\"> <a href=\"laser_flist.php?$getp\" target=\"_self\" title=\"Laser\">Laserliste</a></p>\n";
+ }
+ ?>
+ </body>
+ </html>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/ldap_search_uid.php Thu Sep 12 09:04:56 2013 +0200
@@ -0,0 +1,72 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer - Fritz-Haber-Institut
+ * @copyright 08/2013
+ *
+ * Suche UID aus LDAP
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+?>
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+ <head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <!-- <meta http-equiv="content-type" content="text/html; charset=utf-8" /> -->
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
+
+ <title>LDAP + uid-Suche</title>
+ </head>
+ <body onload="document.flogin.user.focus();">
+ <div align="center">
+ <h3>Ermittlung userid zu Mitarbeiter FHI</h3>
+ </div>
+<?php
+ $user = $_POST["user"];
+ if (!isset($user) && !$user)
+ {
+?>
+ <div align="center">
+ <p>Bitte geben Sie Nachname und Vorname des gesuchten Mitarbeiters ein.</p>
+ <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="flogin">
+ <table border="0" cellspacing="1" cellpadding="0" bgcolor="#000066"><tr><td bgcolor="#e0e0e0">
+ <table border="0" cellspacing="2" cellpadding="4">
+ <tr bgcolor="#DEDFE1"><td>Nachname</td>
+ <td valign="top"><input type="text" name="user[sn]" id="user" size="20" value="<?php echo $user['sn']; ?>"/>
+ </td>
+ </tr>
+ <tr bgcolor="#F8F8F8"><td>Vorname</td>
+ <td valign="top"><input type="text" name="user[gn]" size="20" value="<?php echo $user['gn']; ?>"/>
+ </td>
+ </tr>
+ <tr bgcolor="#DEDFE1"><td> </td>
+ <td><input class="button" type="submit" name="user[ok]" value=" suchen " />
+ </td>
+ </tr>
+ </table>
+ </td></tr></table>
+ </form>
+ </div>
+<?php
+ }
+ else
+ {
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/conf.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ $sn = $user["sn"];
+ $gn = $user["gn"];
+ $uid = ldap_search_uid($sn,$gn);
+ if (isset($uid) && $uid)
+ echo "<p class='green'> '$gn $sn' hat die userid <b>$uid</b></p>";
+ else
+ echo "<p class='red'> '$gn $sn' hat keine userid im FHI.</p>";
+
+ echo "<p> <a href='".$_SERVER['PHP_SELF']."'>weitere userid ermitteln</a></p>";
+ }
+
+?>
+ </body>
+ </html>
--- a/fhiiqm/ma_fkt_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/ma_fkt_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,257 +1,257 @@
-<?php
-
-/**
- * @author Bettina Schwarzer
- * @copyright 2011
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("fmr",$_SESSION["recht"]) && !in_array("fme",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $fkt = $_POST["fkt"];
- $fkt["fid"] = $fkt["func"]; // kein autocomplete bei Funktion
- if (!$fkt["pid"]) $fkt["pid"] = $_GET["p"];
-// if (!$fkt["fid"]) $fkt["fid"] = $_GET["f"];
- $mfid = $_GET[i];
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- // $_GET-Parameter zurück zur Funktionenliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
- $ok = $_POST["ok"];
- $sub = $_POST["eintragen"];
- $del = $_POST["del"];
-
- $dup = $_POST["dup"];
- if (!$dup) $dup = $_GET["dp"];
- $copy = $_GET["c"];
-
- if ($dup)
- { // Info duplizieren
- $tab = "MA_Funktion";
- $key = "mf_ID";
- $val = $mfid;
-// $ret=1;
- $ret = duplicate_record ($tab, $key, $val);
- if ($ret)
- {
- $addr = $_SERVER["PHP_SELF"] . "?i=$ret&c=1";
- header("Location: $addr");
- exit;
- }
- else $duptext = " - Fehler beim Duplizieren von ". $fkt["persknr"] . " und " .$fkt["fkt_ID"];
- }
-// print_r($fkt); echo "<br />";
-
-?>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
- <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
-<!--
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
--->
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
- <title>Mitarbeiter - Funktionen</title>
- </head>
-
- <body>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/reseller_account_template.png\" border=\"0\" alt=\"Mitarbeiter-Funktion\" title=\"Mitarbeiter-Funktion\"/></div>\n";
-?>
-
- <div align='center'>
-<!-- <style type="text/css">
- .ui-datepicker {
- font-size: 11px;
- background-color: #AEE7E7
- }
- </style>
--->
- <script>
- $(document).ready(function() {
- $("#persknr").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
-/* $("#func").autocomplete({
- source: "/fhiiqm/inc/fkt_list_ac.inc.php",
- minLength: 1,
- select: function(event,ui){$("#fid").val(ui.item.id);}
- });
-*/
- $("#von").datepicker({
- dateFormat: 'yy-mm-dd',
- yearRange: '2000:2020',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#bis").datepicker({
- dateFormat: 'yy-mm-dd',
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
-// $("input[id='filter']").addClass("long50");
- });
- </script>
-
- <?php
- if ($copy) $duptext = " (Kopie)"; else $duptext = "";
- echo "<h3>Zuordnung von Funktionen zu Mitarbeitern$duptext<h3>";
-
- echo "</div>\n";
-
- if (!$ok || (!isset($fkt) && !$fkt) || !$fkt["pid"] || !$fkt["fid"] || (!$sub && !$del))
- {
- if ($mfid && !$fkt["fid"])
- {
- $sql = "SELECT ma.persknr, fkt_bereich, fkt_von, fkt_bis, fkt_bem, CONCAT(nachname,', ',vorname) AS vname, fkt_bez, ma.fkt_ID
- FROM fhiiqm.MA_Funktion ma INNER JOIN
- fhiiqm.Mitarbeiter m ON ma.persknr=m.persknr INNER JOIN
- fhiiqm.Funktion f ON ma.fkt_ID=f.fkt_ID
- WHERE mf_ID = $mfid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $fkt["pid"] = $row->persknr;
- $fkt["persknr"] = $row->vname;
-// $fkt["func"] = $row->fkt_bez; // nur wenn autocomplete fuer Funktion genutzt wird
- $fkt["func"] = $row->fkt_ID;
- $fkt["ber"] = $row->fkt_bereich;
- $fkt["von"] = $row->fkt_von;
- $fkt["bis"] = $row->fkt_bis;
- $fkt["bem"] = $row->fkt_bem;
- }
- }
- }
- include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/ma_fkt_form.inc.php");
- }
- else
- {
- // Daten Loeschen, speichern
- echo "<div align='center'>\n";
-
- if ($del)
- {
- $sql="DELETE FROM MA_Funktion WHERE mf_ID=$mfid";
- $resd = $dbc -> execute($sql);
- if ($resd) echo "<p class='green'><b>DELETE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' wurde erfolgreich gelöscht.</b></p>\n";
- else echo "<p class='red'><b>DELETE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' konnten nicht gelöscht werden.</b></p>\n";
- }
- else
- {
- // Eingabedaten validieren
- if (!$fkt["von"])
- $fvon = null;
- elseif (!$fvon = new DateTime_s($fkt["von"]))
- $fvon = null;
- if (!$fkt["bis"])
- $fbis = null;
- elseif (!$fbis = new DateTime_s($fkt["bis"]))
- $fbis = null;
- if ($fkt["ber"]) $fkt["ber"] = substr($fkt["ber"],0,50); else $fkt["ber"]=null;
- if ($fkt["bem"]) $fkt["bem"] = substr($fkt["bem"],0,100); else $fkt["bem"]=null;
- /*
- echo "MA = ".$fkt["pid"] ." - ". $fkt["persknr"] . ", Funktion= ".$fkt["fid"] ." - ". $fkt["func"] . ", Bereich = " . $fkt["ber"] .
- ", von = ".$fkt["von"] .", bis = ".$fkt["bis"] .", bem = ".$fkt["bem"] ."<br />\n";
- echo "fvon = $fvon, fbis = $fbis<br />\n";
- */
- if ($fkt["pid"] && $fkt["fid"])
- {
- $sql="SELECT COUNT(*) FROM MA_Funktion WHERE persknr=" . $fkt["pid"] . " AND fkt_ID='" . $fkt["fid"] ."'";
- $result = $dbc ->querySingleItem($sql);
- if ($result || $mfid)
- { // UPDATE
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- $stmt -> prepare("UPDATE fhiiqm.MA_Funktion SET
- persknr = ?,
- fkt_ID = ?,
- fkt_bereich = ?,
- fkt_von = ?,
- fkt_bis = ?,
- fkt_bem = ?
- WHERE mf_ID = $mfid");
- $stmt -> bind_param('isssss',$fkt["pid"],$fkt["fid"],$fkt["ber"], $fvon, $fbis, $fkt["bem"]);
- $res = $stmt -> execute();
- // print_r($stmt);
- if ($stmt->error) echo "error: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
- if ($res)
- echo "<p class='green'><b>UPDATE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' wurde erfolgreich gespeichert.</b></p>\n";
- else
- echo "<p class='red'><b>UPDATE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' konnte nicht gespeichert werden!</b></p>\n";
- }
- }
- else
- { // INSERT
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- $stmt -> prepare("INSERT INTO fhiiqm.MA_Funktion (persknr,fkt_ID,fkt_bereich,fkt_von,fkt_bis,fkt_bem) VALUES(?,?,?,?,?,?)");
- $stmt -> bind_param('isssss',$fkt["pid"],$fkt["fid"],$fkt["ber"], $fvon, $fbis, $fkt["bem"]);
- $res = $stmt -> execute();
- if ($stmt->error) echo "error: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
- if ($res)
- echo "<p class='green'><b>INSERT: Zuordnung von '".$fkt["func"]."' zu '".$fkt["persknr"]."' wurde erfolgreich gespeichert.</b></p>\n";
- else
- echo "<p class='red'><b>INSERT: Zuordnung von '".$fkt["func"]."' zu '".$fkt["persknr"]."' konnte nicht gespeichert werden!</b></p>\n";
- }
-
- }
- }
- }
- echo "</div>\n";
- echo "<p class='sc'> <a href=\"ma_fkt_flist.php?$getp\" target=\"_self\" title=\"Funktionen\">Zur Funktionenliste</a></p>\n";
- echo "<p class='sc'> <a href=\"ma_fkt_ed.php\" target=\"_self\" title=\"Funktion erfassen\">Weitere Funktion erfassen</a></p>\n";
- }
- ?>
-
- </body>
- </html>
+<?php
+
+/**
+ * @author Bettina Schwarzer
+ * @copyright 2011
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("fmr",$_SESSION["recht"]) && !in_array("fme",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $fkt = $_POST["fkt"];
+ $fkt["fid"] = $fkt["func"]; // kein autocomplete bei Funktion
+ if (!$fkt["pid"]) $fkt["pid"] = $_GET["p"];
+// if (!$fkt["fid"]) $fkt["fid"] = $_GET["f"];
+ $mfid = $_GET[i];
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ // $_GET-Parameter zurück zur Funktionenliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
+ $ok = $_POST["ok"];
+ $sub = $_POST["eintragen"];
+ $del = $_POST["del"];
+
+ $dup = $_POST["dup"];
+ if (!$dup) $dup = $_GET["dp"];
+ $copy = $_GET["c"];
+
+ if ($dup)
+ { // Info duplizieren
+ $tab = "MA_Funktion";
+ $key = "mf_ID";
+ $val = $mfid;
+// $ret=1;
+ $ret = duplicate_record ($tab, $key, $val);
+ if ($ret)
+ {
+ $addr = $_SERVER["PHP_SELF"] . "?i=$ret&c=1";
+ header("Location: $addr");
+ exit;
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $fkt["persknr"] . " und " .$fkt["fkt_ID"];
+ }
+// print_r($fkt); echo "<br />";
+
+?>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
+ <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
+<!--
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
+-->
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+ <title>Mitarbeiter - Funktionen</title>
+ </head>
+
+ <body>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/reseller_account_template.png\" border=\"0\" alt=\"Mitarbeiter-Funktion\" title=\"Mitarbeiter-Funktion\"/></div>\n";
+?>
+
+ <div align='center'>
+<!-- <style type="text/css">
+ .ui-datepicker {
+ font-size: 11px;
+ background-color: #AEE7E7
+ }
+ </style>
+-->
+ <script>
+ $(document).ready(function() {
+ $("#persknr").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+/* $("#func").autocomplete({
+ source: "/fhiiqm/inc/fkt_list_ac.inc.php",
+ minLength: 1,
+ select: function(event,ui){$("#fid").val(ui.item.id);}
+ });
+*/
+ $("#von").datepicker({
+ dateFormat: 'yy-mm-dd',
+ yearRange: '2000:2020',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#bis").datepicker({
+ dateFormat: 'yy-mm-dd',
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+// $("input[id='filter']").addClass("long50");
+ });
+ </script>
+
+ <?php
+ if ($copy) $duptext = " (Kopie)"; else $duptext = "";
+ echo "<h3>Zuordnung von Funktionen zu Mitarbeitern$duptext<h3>";
+
+ echo "</div>\n";
+
+ if (!$ok || (!isset($fkt) && !$fkt) || !$fkt["pid"] || !$fkt["fid"] || (!$sub && !$del))
+ {
+ if ($mfid && !$fkt["fid"])
+ {
+ $sql = "SELECT ma.persknr, fkt_bereich, fkt_von, fkt_bis, fkt_bem, CONCAT(nachname,', ',vorname) AS vname, fkt_bez, ma.fkt_ID
+ FROM fhiiqm.MA_Funktion ma INNER JOIN
+ fhiiqm.Mitarbeiter m ON ma.persknr=m.persknr INNER JOIN
+ fhiiqm.Funktion f ON ma.fkt_ID=f.fkt_ID
+ WHERE mf_ID = $mfid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $fkt["pid"] = $row->persknr;
+ $fkt["persknr"] = $row->vname;
+// $fkt["func"] = $row->fkt_bez; // nur wenn autocomplete fuer Funktion genutzt wird
+ $fkt["func"] = $row->fkt_ID;
+ $fkt["ber"] = $row->fkt_bereich;
+ $fkt["von"] = $row->fkt_von;
+ $fkt["bis"] = $row->fkt_bis;
+ $fkt["bem"] = $row->fkt_bem;
+ }
+ }
+ }
+ include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/ma_fkt_form.inc.php");
+ }
+ else
+ {
+ // Daten Loeschen, speichern
+ echo "<div align='center'>\n";
+
+ if ($del)
+ {
+ $sql="DELETE FROM MA_Funktion WHERE mf_ID=$mfid";
+ $resd = $dbc -> execute($sql);
+ if ($resd) echo "<p class='green'><b>DELETE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' wurde erfolgreich gelöscht.</b></p>\n";
+ else echo "<p class='red'><b>DELETE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' konnten nicht gelöscht werden.</b></p>\n";
+ }
+ else
+ {
+ // Eingabedaten validieren
+ if (!$fkt["von"])
+ $fvon = null;
+ elseif (!$fvon = new DateTime_s($fkt["von"]))
+ $fvon = null;
+ if (!$fkt["bis"])
+ $fbis = null;
+ elseif (!$fbis = new DateTime_s($fkt["bis"]))
+ $fbis = null;
+ if ($fkt["ber"]) $fkt["ber"] = substr($fkt["ber"],0,50); else $fkt["ber"]=null;
+ if ($fkt["bem"]) $fkt["bem"] = substr($fkt["bem"],0,100); else $fkt["bem"]=null;
+ /*
+ echo "MA = ".$fkt["pid"] ." - ". $fkt["persknr"] . ", Funktion= ".$fkt["fid"] ." - ". $fkt["func"] . ", Bereich = " . $fkt["ber"] .
+ ", von = ".$fkt["von"] .", bis = ".$fkt["bis"] .", bem = ".$fkt["bem"] ."<br />\n";
+ echo "fvon = $fvon, fbis = $fbis<br />\n";
+ */
+ if ($fkt["pid"] && $fkt["fid"])
+ {
+ $sql="SELECT COUNT(*) FROM MA_Funktion WHERE persknr=" . $fkt["pid"] . " AND fkt_ID='" . $fkt["fid"] ."'";
+ $result = $dbc ->querySingleItem($sql);
+ if ($result && $mfid)
+ { // UPDATE
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $stmt -> prepare("UPDATE fhiiqm.MA_Funktion SET
+ persknr = ?,
+ fkt_ID = ?,
+ fkt_bereich = ?,
+ fkt_von = ?,
+ fkt_bis = ?,
+ fkt_bem = ?
+ WHERE mf_ID = $mfid");
+ $stmt -> bind_param('isssss',$fkt["pid"],$fkt["fid"],$fkt["ber"], $fvon, $fbis, $fkt["bem"]);
+ $res = $stmt -> execute();
+ // print_r($stmt);
+ if ($stmt->error) echo "error: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
+ if ($res)
+ echo "<p class='green'><b>UPDATE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' wurde erfolgreich gespeichert.</b></p>\n";
+ else
+ echo "<p class='red'><b>UPDATE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' konnte nicht gespeichert werden!</b></p>\n";
+ }
+ }
+ else
+ { // INSERT
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $stmt -> prepare("INSERT INTO fhiiqm.MA_Funktion (persknr,fkt_ID,fkt_bereich,fkt_von,fkt_bis,fkt_bem) VALUES(?,?,?,?,?,?)");
+ $stmt -> bind_param('isssss',$fkt["pid"],$fkt["fid"],$fkt["ber"], $fvon, $fbis, $fkt["bem"]);
+ $res = $stmt -> execute();
+ if ($stmt->error) echo "error: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
+ if ($res)
+ echo "<p class='green'><b>INSERT: Zuordnung von '".$fkt["func"]."' zu '".$fkt["persknr"]."' wurde erfolgreich gespeichert.</b></p>\n";
+ else
+ echo "<p class='red'><b>INSERT: Zuordnung von '".$fkt["func"]."' zu '".$fkt["persknr"]."' konnte nicht gespeichert werden!</b></p>\n";
+ }
+
+ }
+ }
+ }
+ echo "</div>\n";
+ echo "<p class='sc'> <a href=\"ma_fkt_flist.php?$getp\" target=\"_self\" title=\"Funktionen\">Zur Funktionenliste</a></p>\n";
+ echo "<p class='sc'> <a href=\"ma_fkt_ed.php\" target=\"_self\" title=\"Funktion erfassen\">Weitere Funktion erfassen</a></p>\n";
+ }
+ ?>
+
+ </body>
+ </html>
--- a/fhiiqm/ma_tel_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/ma_tel_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,409 +1,429 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 12/2012
- *
- * INSERT/UPDATE/(DELETE) Mitarbeiter
- *
- */
-
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $sub = $_POST["eintragen"];
- $del = $_POST["del"];
- $ma = $_POST["ma"];
- $okn = $_POST["okn"];
- $ok = $_POST["ok"];
- if (!$okn) $ok=0;
- $pid = $_GET["i"]; // persknr
-
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige
-
-// print_r ($ma); echo "<br />sub = $sub<br /><br />";
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
- <title>MA/O bearbeiten</title>
-
- <script type="text/javascript">
- <!--
- var counter = 0;
- var limit = 99;
- var arr = new Array();
- var arra = new Array();
- var arrg = new Array();
- function addInput(divName){
- if (counter == limit) {
- alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
- }
- else
- {
- if (divName == 'addtel')
- {
- var newdiv = document.createElement('div');
- var opt="<option value='-1'></option>";
- var i;
- for (var key in arr)
- {
- opt = opt.concat("<option value='",key,"'>",arr[key],"</option>\n" );
- }
- opt += "</select>\n";
- newdiv.innerHTML = "<span></span><select name='ma[tel][]'>"+opt;
- newdiv.innerHTML += " oder neu <input type='text' name='ma[ntel][]' size='20' maxlength='20' />";
- opt = "<option value='-1'></option>";
- for (i=1; i<10; i++)
- {
- opt = opt.concat("<option value=",i,">",i,"</option>\n");
- }
- opt += "</select>\n";
- newdiv.innerHTML += " Priorität <select name='ma[so][]'>"+opt;
- newdiv.innerHTML += " öffentlich <input type='checkbox' name='ma[pub][" + (counter+1) + "]' value='1' />\n";
- document.getElementById(divName).appendChild(newdiv);
- counter++;
- }
- else
- {
- var newdiv = document.createElement('div');
- var opt="";
- var optg="<option value='-1'></option>";
- for (var key in arra)
- {
- opt = opt.concat("<option value='",key,"'>",arra[key],"</option>\n" );
- }
- opt += "</select>\n";
- newdiv.innerHTML = "<span></span><select name='ma[abt][]'>"+opt;
- for (var key in arrg)
- {
- optg = optg.concat("<option value='",key,"'>",arrg[key],"</option>\n" );
- }
- optg += "</select>\n";
- newdiv.innerHTML += " Arbeitsgruppe <select name='ma[rag][]'>"+optg;
- document.getElementById(divName).appendChild(newdiv);
- counter++;
- }
- }
- }
- function delInput(divId){
- var kn = document.getElementById(divId);
- while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SPAN" && kn.lastChild.nodeName != "A")
- {
-// alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
- var knc = kn.lastChild;
- document.getElementById(divId).removeChild(knc);
- }
-// if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
- if (kn.lastChild.nodeName == "SPAN") document.getElementById(divId).removeChild(kn.lastChild);
- }
- //-->
- </script>
-
-</head>
-
-<body>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Mitarbeiter bearbeiten\" title=\"Mitarbeiter bearbeiten\"/></div>\n";
-
- if ($pid) $text = "editieren"; else $text = "erfassen";
- echo "<div align=\"center\">";
- echo "<h3>Mitarbeiter/Objekte $text</h3>";
- echo "</div>\n";
- if ((!$sub && !$del) || !isset($ma) || !$ok)
- {
-
- if ($pid && (!$sub || !$del) && !isset($ma))
- {
- $sql = "SELECT nachname,vorname,titel,abt_tel,email,aktiv FROM Mitarbeiter WHERE persknr=$pid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $ma['name'] = $row->nachname;
- $ma['vname'] = $row->vorname;
- $ma['titel'] = $row->titel;
- $ma['abtm'] = $row->abt_tel;
- $ma['email'] = $row->email;
- $ma['fhi'] = ($row->aktiv == 1)? 1 : 0;
- }
- }
- // Arbeitsgruppe, Abteilung
- $sql = "SELECT mr.rag_ID, abt_ID FROM fhiiqm.MA_RaumArbGruppe mr INNER JOIN RaumArb_Gruppe r ON mr.rag_ID=r.rag_ID
- WHERE persknr=$pid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $ma['abt'][] = $row->abt_ID;
- $ma['rag'][] = $row->rag_ID;
- }
- }
- if (count($ma['abt']) == 0) $ma['abt'][] = $ma['abtm'];
- // Haus,Raum
- $sql = "SELECT ma.raum_ID, geb_ID FROM Mitarbeiter_Raum ma INNER JOIN Raum r ON ma.raum_ID=r.raum_ID
- WHERE persknr=$pid ORDER BY raum_ID";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $ma['geb'] = $row->geb_ID;
- $ma['raum'] = $row->raum_ID;
- }
- }
- // Telefon
- $sql = "SELECT m.telefon_nr,public,sort
- FROM fhiiqm.MA_Telefon m INNER JOIN Telefon t ON m.telefon_nr=t.telefon_nr
- WHERE persknr = $pid ORDER BY IFNULL(sort,99)" ;
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $ma['tel'][] = $row->telefon_nr;
- $ma['pub'][] = ($row->public)? 1 : 0;
- $ma['so'][] = $row->sort;
- }
- }
- }
- include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/ma_ed_form.inc.php");
-
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?";
- elseif ($del)
- $frage = "Mitarbeiter wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo " /></td>\n</tr>\n";
- }
- if (!is_null($_SESSION["recht"]) && in_array("mte",$_SESSION["recht"]))
- {
- echo "
- <tr><td> </td>\n
- <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
- if ($pid)
- {
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
-// echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
- }
- echo "</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
- echo "<p class='sc'> <a href=\"ma_tel_flist.php?e=1$getp\" target=\"_self\" title=\"Telefon-Liste\">« zur Telefon-Liste</a></p>\n";
- echo "</form>\n";
- }
- else
- {
- echo "<div align='center'>\n";
-
- if ($del)
- {
- if ($ma["fhi"])
- {
- // nur aktiv auf 0 setzen
- $sql = "UPDATE Mitarbeiter SET aktiv=0 WHERE persknr = $pid";
- $retdi = $dbc -> execute($sql);
- $sql = "DELETE FROM Mitarbeiter_Raum WHERE persknr = $pid";
- $retdi = $dbc -> execute($sql);
- $sql = "DELETE FROM MA_Telefon WHERE persknr = $pid";
- $retdi = $dbc -> execute($sql);
- $sql = "DELETE FROM MA_RaumArbGruppe WHERE persknr = $pid";
- $retdi = $dbc -> execute($sql);
- }
- else
- {
- $sql = "DELETE FROM Mitarbeiter WHERE persknr = $pid";
- $retdi = $dbc -> execute($sql);
- }
- if ($retdi)
- {
- echo "<p class='green'><b>DELETE: Daten zu '".$ma["name"]. ", ". $ma['vname'] ."' wurden erfolgreich gelöscht.</b></p>\n";
- }
- else
- {
- echo "<p class='red'><b>DELETE: Daten zu '".$ma["name"]. ", ". $ma['vname'] ."' konnten nicht gelöscht werden!</b></p>\n";
- echo "sql = $sql<br />";
- echo "error DELETE: " . $dbc->error . "<br />";
- }
- include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/ma_tel_dat_show.inc.php");
- }
- else //INSERT oder UPDATE
- {
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($ma['fhi']) $aktiv = 1; else $aktiv = 2;
- if ($ma['email'])
- {
- if (strpos($ma['email'],"@") > 0) $ma['email'] = $ma['email']; else $ma['email'] = $ma['email'] . "@fhi-berlin.mpg.de";
- }
- foreach ($ma as &$elem) if (!$elem) $elem = null; // NULL-Eintrag in Leerfelder
- if ($pid) //UPDATE
- {
- // Abt. alt in aktualisierten Abteilungen?
- if (!in_array($ma['abtm'],$ma['abt'])) $ma['abtm'] = $ma['abt'][0];
- $stmt -> prepare("UPDATE Mitarbeiter SET
- nachname = ?,
- vorname = ?,
- titel = ?,
- email = ?,
- abt_tel = ?,
- aktiv = ?
- WHERE persknr = $pid");
- $stmt -> bind_param('ssssii',$ma['name'],$ma['vname'],$ma['titel'],$ma['email'],$ma['abtm'], $aktiv);
-// echo "UPDATE: ". var_dump($stmt);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error UPDATE Mitarbeiter: " . $stmt->error . "<br><br>\n";
- }
- else
- {
- $sql = "SELECT MAX(persknr) FROM Mitarbeiter WHERE persknr < 9500";
- $pid = $dbc -> querySingleItem($sql) + 1;
- $stmt -> prepare ("INSERT INTO Mitarbeiter (persknr, nachname, vorname, titel,email,abt_tel,aktiv) VALUES (?,?,?,?,?,?,?)");
- $stmt -> bind_param('issssii',$pid,$ma['name'],$ma['vname'],$ma['titel'],$ma['email'],$ma['abt'][0], $aktiv);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error INSERT Mitarbeiter: " . $stmt->error . "<br><br>\n";
- $ma['abtm'] = $ma['abt'][0];
- }
- if ($result)
- {
- $ret = 1;
- // raum
- if ($ma["raum"] > "-1")
- {
- $sql = "DELETE FROM Mitarbeiter_Raum WHERE persknr=$pid";
- $redr = $dbc -> execute($sql);
- if ($redr)
- {
- $sql = "INSERT INTO Mitarbeiter_Raum (persknr, raum_ID) VALUES ($pid, " . $ma["raum"] . ")";
- $ret = $dbc -> execute($sql);
- }
- }
- if (is_array($ma["rag"]) && count($ma["rag"])>0)
- {
- $sql = "DELETE FROM MA_RaumArbGruppe WHERE persknr=$pid";
- $redr = $dbc -> execute($sql);
- if ($redr)
- {
- foreach ($ma['rag'] as $rag)
- {
- if ($rag > 0)
- {
- $sql = "INSERT INTO MA_RaumArbGruppe (persknr, rag_ID) VALUES ($pid, $rag)";
- $retn = $dbc -> execute($sql);
- if ($retn && $ret) $ret = 1; else $ret = 0;
- }
- }
- }
- }
- if (is_array($ma['ntel']))
- {
- foreach ($ma['ntel'] as $tel)
- {
- if ($tel > "!")
- {
- $sql = "SELECT COUNT(*) FROM Telefon WHERE telefon_nr ='$tel'";
- $anz = $dbc -> querySingleItem($sql);
- if ( $anz == 0)
- {
- $sql = "INSERT INTO Telefon (telefon_nr) VALUES('$tel')";
- $rest = $dbc -> execute($sql);
- if ($rest && $ret) $ret = 1; else $ret = 0;
- }
- }
- }
- }
- if ($ret)
- {
- foreach ($ma['so'] as &$prio)
- if ($prio == '-1') $prio = null;
- $sql = "DELETE FROM MA_Telefon WHERE persknr = $pid";
- $redmt = $dbc -> execute($sql);
- if ($redmt)
- {
- $i=0;
- foreach ($ma['tel'] as $tel)
- {
- if ($tel >"!" && $tel != "-1")
- {
- if (!isset($ma['pub'][$i])) $ma['pub'][$i] = 'NULL';
- if (!isset($ma['so'][$i])) $ma['so'][$i] = 'NULL';
- $sql = "INSERT INTO MA_Telefon (persknr, telefon_nr, public, sort) VALUES ($pid,'$tel'," . $ma['pub'][$i] . ",". $ma['so'][$i] . ")";
- $rest = $dbc -> execute($sql);
- if ($rest && $ret) $ret = 1; else $ret = 0;
- }
- $i++;
- }
- $i=0;
- foreach ($ma['ntel'] as $tel)
- {
- if ($tel >"!")
- {
- if (!isset($ma['pub'][$i])) $ma['pub'][$i] = 'NULL';
- if (!isset($ma['so'][$i])) $ma['so'][$i] = 'NULL';
- $sql = "INSERT INTO MA_Telefon (persknr, telefon_nr, public, sort) VALUES ($pid,'$tel'," . $ma['pub'][$i] . ",". $ma['so'][$i] . ")";
- $rest = $dbc -> execute($sql);
- if ($rest && $ret) $ret = 1; else $ret = 0;
- }
- $i++;
- }
- }
- }
- }
- }
- if ($result && $redmt && $ret) // INSERT/UPDATE Info
- {
- //Eingabe Daten erfolgreich
- echo "<p class='green'><b>Mitarbeiterdaten zu " . $ma['name']. ", ". $ma['vname'] . " wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br /><br />\n";
- }
- else
- {
- echo "<p class='red'><b>Mitarbeiterdaten zu " . $ma['name']. ", ". $ma['vname'] . " wurden nicht oder nur teilweise gespeichert.</b></p>\n";
- echo "error: ". $dbc -> error;
- echo "<br /><br />\n";
- }
- include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/ma_tel_dat_show.inc.php");
- }
- echo "</div>";
- echo "<p class='sc'> <a href=\"ma_tel_flist.php?e=1$getp\" target=\"_self\" title=\"Telefonliste\">« zur Telefon-Liste</a></p>\n";
- echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Mitarbeiter erfassen\">Neuen Mitarbeiter erfassen</a></p>\n";
- }
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 12/2012
+ *
+ * INSERT/UPDATE/(DELETE) Mitarbeiter
+ *
+ */
+
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $sub = $_POST["eintragen"];
+ $del = $_POST["del"];
+ $ma = $_POST["ma"];
+ $okn = $_POST["okn"];
+ $ok = $_POST["ok"];
+ if (!$okn) $ok=0;
+ $pid = $_GET["i"]; // persknr
+
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige
+
+// print_r ($ma); echo "<br />sub = $sub<br /><br />";
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+ <title>MA/O bearbeiten</title>
+
+ <script type="text/javascript">
+ <!--
+ var counter = 0;
+ var limit = 99;
+ var arr = new Array();
+ var arra = new Array();
+ var arrg = new Array();
+ function addInput(divName){
+ if (counter == limit) {
+ alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
+ }
+ else
+ {
+ if (divName == 'addtel')
+ {
+ var newdiv = document.createElement('div');
+ var opt="<option value='-1'></option>";
+ var i;
+ for (var key in arr)
+ {
+ opt = opt.concat("<option value='",key,"'>",arr[key],"</option>\n" );
+ }
+ opt += "</select>\n";
+ newdiv.innerHTML = "<span></span><select name='ma[tel][]'>"+opt;
+ newdiv.innerHTML += " oder neu <input type='text' name='ma[ntel][]' size='20' maxlength='20' />";
+ opt = "<option value='-1'></option>";
+ for (i=1; i<10; i++)
+ {
+ opt = opt.concat("<option value=",i,">",i,"</option>\n");
+ }
+ opt += "</select>\n";
+ newdiv.innerHTML += " Priorität <select name='ma[so][]'>"+opt;
+ newdiv.innerHTML += " öffentlich <input type='checkbox' name='ma[pub][" + (counter+1) + "]' value='1' />\n";
+ document.getElementById(divName).appendChild(newdiv);
+ counter++;
+ }
+ else
+ {
+ var newdiv = document.createElement('div');
+ var opt="";
+ var optg="<option value='-1'></option>";
+ for (var key in arra)
+ {
+ opt = opt.concat("<option value='",key,"'>",arra[key],"</option>\n" );
+ }
+ opt += "</select>\n";
+ newdiv.innerHTML = "<span></span><select name='ma[abt][]'>"+opt;
+ for (var key in arrg)
+ {
+ optg = optg.concat("<option value='",key,"'>",arrg[key],"</option>\n" );
+ }
+ optg += "</select>\n";
+ newdiv.innerHTML += " Arbeitsgruppe <select name='ma[rag][]'>"+optg;
+ document.getElementById(divName).appendChild(newdiv);
+ counter++;
+ }
+ }
+ }
+ function delInput(divId){
+ var kn = document.getElementById(divId);
+ while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SPAN" && kn.lastChild.nodeName != "A")
+ {
+// alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
+ var knc = kn.lastChild;
+ document.getElementById(divId).removeChild(knc);
+ }
+// if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
+ if (kn.lastChild.nodeName == "SPAN") document.getElementById(divId).removeChild(kn.lastChild);
+ }
+ //-->
+ </script>
+
+</head>
+
+<body>
+ <script type="text/javascript">
+ <!--
+ $(document).ready(function() {
+ $("#fhi").focus();
+ $("#nname").autocomplete({
+ source: "/fhiiqm/inc/ma_ldap_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){// $("#nname").val(ui.item.id);
+ $("#vname").val(ui.item.id2);
+ $("#email").val(ui.item.id3); }
+ });
+ });
+ //-->
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Mitarbeiter bearbeiten\" title=\"Mitarbeiter bearbeiten\"/></div>\n";
+
+ if ($pid) $text = "editieren"; else $text = "erfassen";
+ echo "<div align=\"center\">";
+ echo "<h3>Mitarbeiter/Objekte $text</h3>";
+ echo "</div>\n";
+ if ((!$sub && !$del) || !isset($ma) || !$ok)
+ {
+
+ if ($pid && (!$sub || !$del) && !isset($ma))
+ {
+ $sql = "SELECT nachname,vorname,titel,abt_tel,email,aktiv,timestamp,userid FROM Mitarbeiter WHERE persknr=$pid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $ma['name'] = $row->nachname;
+ $ma['vname'] = $row->vorname;
+ $ma['titel'] = $row->titel;
+ $ma['abtm'] = $row->abt_tel;
+ $ma['email'] = $row->email;
+ $ma['fhi'] = ($row->aktiv == 1)? 1 : 0;
+ $ma["tstmp"] = $row->timestamp;
+ $ma["uid"] = $row->userid;
+ }
+ }
+ // Arbeitsgruppe, Abteilung
+ $sql = "SELECT mr.rag_ID, abt_ID FROM fhiiqm.MA_RaumArbGruppe mr INNER JOIN RaumArb_Gruppe r ON mr.rag_ID=r.rag_ID
+ WHERE persknr=$pid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $ma['abt'][] = $row->abt_ID;
+ $ma['rag'][] = $row->rag_ID;
+ }
+ }
+ if (count($ma['abt']) == 0) $ma['abt'][] = $ma['abtm'];
+ // Haus,Raum
+ $sql = "SELECT ma.raum_ID, geb_ID FROM Mitarbeiter_Raum ma INNER JOIN Raum r ON ma.raum_ID=r.raum_ID
+ WHERE persknr=$pid ORDER BY raum_ID";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $ma['geb'] = $row->geb_ID;
+ $ma['raum'] = $row->raum_ID;
+ }
+ }
+ // Telefon
+ $sql = "SELECT m.telefon_nr,public,sort
+ FROM fhiiqm.MA_Telefon m INNER JOIN Telefon t ON m.telefon_nr=t.telefon_nr
+ WHERE persknr = $pid ORDER BY IFNULL(sort,99)" ;
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $ma['tel'][] = $row->telefon_nr;
+ $ma['pub'][] = ($row->public)? 1 : 0;
+ $ma['so'][] = $row->sort;
+ }
+ }
+ }
+ include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/ma_ed_form.inc.php");
+
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?";
+ elseif ($del)
+ $frage = "Mitarbeiter wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo " /></td>\n</tr>\n";
+ }
+ if (!is_null($_SESSION["recht"]) && in_array("mte",$_SESSION["recht"]))
+ {
+ echo "
+ <tr><td> </td>\n
+ <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
+ if ($pid)
+ {
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+// echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
+ }
+ echo "</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+ echo "<p class='sc'> <a href=\"ma_tel_flist.php?e=1$getp\" target=\"_self\" title=\"Telefon-Liste\">« zur Telefon-Liste</a></p>\n";
+ echo "</form>\n";
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+ $userid = $_SESSION["userid"];
+ if ($del)
+ {
+ if ($ma["fhi"])
+ {
+ // nur aktiv auf 0 setzen
+ $sql = "UPDATE Mitarbeiter SET aktiv=0, userid=$userid WHERE persknr = $pid";
+ $retdi = $dbc -> execute($sql);
+ $sql = "DELETE FROM Mitarbeiter_Raum WHERE persknr = $pid";
+ $retdi = $dbc -> execute($sql);
+ $sql = "DELETE FROM MA_Telefon WHERE persknr = $pid";
+ $retdi = $dbc -> execute($sql);
+ $sql = "DELETE FROM MA_RaumArbGruppe WHERE persknr = $pid";
+ $retdi = $dbc -> execute($sql);
+ }
+ else
+ {
+ $sql = "DELETE FROM Mitarbeiter WHERE persknr = $pid";
+ $retdi = $dbc -> execute($sql);
+ }
+ if ($retdi)
+ {
+ echo "<p class='green'><b>DELETE: Daten zu '".$ma["name"]. ", ". $ma['vname'] ."' wurden erfolgreich gelöscht.</b></p>\n";
+ }
+ else
+ {
+ echo "<p class='red'><b>DELETE: Daten zu '".$ma["name"]. ", ". $ma['vname'] ."' konnten nicht gelöscht werden!</b></p>\n";
+ echo "sql = $sql<br />";
+ echo "error DELETE: " . $dbc->error . "<br />";
+ }
+ include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/ma_tel_dat_show.inc.php");
+ }
+ else //INSERT oder UPDATE
+ {
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($ma['fhi']) $aktiv = 1; else $aktiv = 2;
+ if ($ma['email'])
+ {
+ if (strpos($ma['email'],"@") > 0) $ma['email'] = $ma['email']; else $ma['email'] = $ma['email'] . "@fhi-berlin.mpg.de";
+ }
+ foreach ($ma as &$elem) if (!$elem) $elem = null; // NULL-Eintrag in Leerfelder
+ if ($pid) //UPDATE
+ {
+ // Abt. alt in aktualisierten Abteilungen?
+ if (!in_array($ma['abtm'],$ma['abt'])) $ma['abtm'] = $ma['abt'][0];
+ $stmt -> prepare("UPDATE Mitarbeiter SET
+ nachname = ?,
+ vorname = ?,
+ titel = ?,
+ email = ?,
+ abt_tel = ?,
+ aktiv = ?,
+ userid = ?
+ WHERE persknr = $pid");
+ $stmt -> bind_param('ssssiis',$ma['name'],$ma['vname'],$ma['titel'],$ma['email'],$ma['abtm'], $aktiv, $userid);
+// echo "UPDATE: ". var_dump($stmt);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error UPDATE Mitarbeiter: " . $stmt->error . "<br><br>\n";
+ }
+ else
+ {
+ $sql = "SELECT MAX(persknr) FROM Mitarbeiter WHERE persknr < 9500";
+ $pid = $dbc -> querySingleItem($sql) + 1;
+ $stmt -> prepare ("INSERT INTO Mitarbeiter (persknr, nachname, vorname, titel,email,abt_tel,aktiv,userid) VALUES (?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('issssiis',$pid,$ma['name'],$ma['vname'],$ma['titel'],$ma['email'],$ma['abt'][0], $aktiv, $userid);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error INSERT Mitarbeiter: " . $stmt->error . "<br><br>\n";
+ $ma['abtm'] = $ma['abt'][0];
+ }
+ if ($result)
+ {
+ $ret = 1;
+ // raum
+ if ($ma["raum"] > "-1")
+ {
+ $sql = "DELETE FROM Mitarbeiter_Raum WHERE persknr=$pid";
+ $redr = $dbc -> execute($sql);
+ if ($redr)
+ {
+ $sql = "INSERT INTO Mitarbeiter_Raum (persknr, raum_ID) VALUES ($pid, " . $ma["raum"] . ")";
+ $ret = $dbc -> execute($sql);
+ }
+ }
+ if (is_array($ma["rag"]) && count($ma["rag"])>0)
+ {
+ $sql = "DELETE FROM MA_RaumArbGruppe WHERE persknr=$pid";
+ $redr = $dbc -> execute($sql);
+ if ($redr)
+ {
+ foreach ($ma['rag'] as $rag)
+ {
+ if ($rag > 0)
+ {
+ $sql = "INSERT INTO MA_RaumArbGruppe (persknr, rag_ID) VALUES ($pid, $rag)";
+ $retn = $dbc -> execute($sql);
+ if ($retn && $ret) $ret = 1; else $ret = 0;
+ }
+ }
+ }
+ }
+ if (is_array($ma['ntel']))
+ {
+ foreach ($ma['ntel'] as $tel)
+ {
+ if ($tel > "!")
+ {
+ $sql = "SELECT COUNT(*) FROM Telefon WHERE telefon_nr ='$tel'";
+ $anz = $dbc -> querySingleItem($sql);
+ if ( $anz == 0)
+ {
+ $sql = "INSERT INTO Telefon (telefon_nr) VALUES('$tel')";
+ $rest = $dbc -> execute($sql);
+ if ($rest && $ret) $ret = 1; else $ret = 0;
+ }
+ }
+ }
+ }
+ if ($ret)
+ {
+ foreach ($ma['so'] as &$prio)
+ if ($prio == '-1') $prio = null;
+ $sql = "DELETE FROM MA_Telefon WHERE persknr = $pid";
+ $redmt = $dbc -> execute($sql);
+ if ($redmt)
+ {
+ $i=0;
+ foreach ($ma['tel'] as $tel)
+ {
+ if ($tel >"!" && $tel != "-1")
+ {
+ if (!isset($ma['pub'][$i])) $ma['pub'][$i] = 'NULL';
+ if (!isset($ma['so'][$i])) $ma['so'][$i] = 'NULL';
+ $sql = "INSERT INTO MA_Telefon (persknr, telefon_nr, public, sort) VALUES ($pid,'$tel'," . $ma['pub'][$i] . ",". $ma['so'][$i] . ")";
+ $rest = $dbc -> execute($sql);
+ if ($rest && $ret) $ret = 1; else $ret = 0;
+ }
+ $i++;
+ }
+ $i=0;
+ foreach ($ma['ntel'] as $tel)
+ {
+ if ($tel >"!")
+ {
+ if (!isset($ma['pub'][$i])) $ma['pub'][$i] = 'NULL';
+ if (!isset($ma['so'][$i])) $ma['so'][$i] = 'NULL';
+ $sql = "INSERT INTO MA_Telefon (persknr, telefon_nr, public, sort) VALUES ($pid,'$tel'," . $ma['pub'][$i] . ",". $ma['so'][$i] . ")";
+ $rest = $dbc -> execute($sql);
+ if ($rest && $ret) $ret = 1; else $ret = 0;
+ }
+ $i++;
+ }
+ }
+ }
+ }
+ }
+ if ($result && $redmt && $ret) // INSERT/UPDATE Info
+ {
+ //Eingabe Daten erfolgreich
+ echo "<p class='green'><b>Mitarbeiterdaten zu " . $ma['name']. ", ". $ma['vname'] . " wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br /><br />\n";
+ }
+ else
+ {
+ echo "<p class='red'><b>Mitarbeiterdaten zu " . $ma['name']. ", ". $ma['vname'] . " wurden nicht oder nur teilweise gespeichert.</b></p>\n";
+ echo "error: ". $dbc -> error;
+ echo "<br /><br />\n";
+ }
+ include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/ma_tel_dat_show.inc.php");
+ }
+ echo "</div>";
+ echo "<p class='sc'> <a href=\"ma_tel_flist.php?e=1$getp\" target=\"_self\" title=\"Telefonliste\">« zur Telefon-Liste</a></p>\n";
+ echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Mitarbeiter erfassen\">Neuen Mitarbeiter erfassen</a></p>\n";
+ }
+?>
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/ma_tel_flist.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/ma_tel_flist.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,294 +1,294 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 11/2012
- *
- * Telefonliste ohne Anmeldung
- *
- * $_GET["e"] = 1, ='editieren', muss gesetzt sein
- *
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- if (isset($_GET["i"]) && $_GET["i"]) $edit = $_GET["i"]; // wegen tab_column, "i" als "e" missbraucht -> editieren ermoeglichen
- if (!$edit) $edit = $_GET["e"];
- if (!$edit) $edit = $_POST["e"];
- if (isset($edit) && $edit)
- {
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]."?e=$edit");
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-// print_r ($_SESSION); echo "<br />";
- }
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
-
- <title>MA/O-Telefonliste</title>
-</head>
-
-<body onload="document.ffilter.filter.focus();">
-
-<?php
- if (isset($edit) && $edit)
- {
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n";
- }
-
- // Felder, nach denen gefiltert werden kann
- $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Arbeitsgruppe",7=>"Telefon/Fax",9=>"Haus", 10=>"Raum");
-// $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr");
- $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"ag",7=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr");
-
- $sort = $_GET["s"]; // Sortierung nach Spalte
- if (!isset($sort) && !$sort) $sort = $_POST["s"];
-
- $dir = $_GET["d"]; // Sortierrichtung
- if (!isset($dir) && !$dir) $dir = $_POST["d"];
-
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
-
- $filter = $_POST["filter"];
- if (!isset($filter) && !$filter) $filter = $_GET["b"];
-
- $subf = $_POST["subf"]; // submit
-
- if (!isset($fnum) || !$fnum) $fnum = 1;
- if (!isset($filter) || !$filter) $filter = "";
- if (!isset($sort) || !$sort) $sort = 2; // Name
- if (!$dir || $dir < "!") $dir = "";
-// print_r ($_REQUEST); echo "<br /><br />";
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
-
- $dbc = new dbconnection();
-/*
- $sql = "SELECT m.persknr, TRIM(nachname) as name, vorname, titel, abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email
- FROM Mitarbeiter m LEFT OUTER JOIN
- Abteilung a ON m.abt_tel=a.abt_ID LEFT OUTER JOIN
- MA_Telefon mt ON m.persknr=mt.persknr LEFT OUTER JOIN
- Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN
- Raum r ON t.raum_ID = r.raum_ID
- WHERE aktiv>0 AND (m.abt_tel <> 7 OR m.abt_tel IS NULL)
- UNION
- SELECT m.persknr, TRIM(nachname) as name, vorname, titel, IFNULL(rag_bez,'INF') as abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email
- FROM Mitarbeiter m LEFT OUTER JOIN
- MA_Telefon mt ON m.persknr=mt.persknr INNER JOIN
- Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN
- Raum r ON t.raum_ID = r.raum_ID LEFT OUTER JOIN
- MA_RaumArbGruppe ma ON m.persknr=ma.persknr LEFT OUTER JOIN
- RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID
- WHERE aktiv>0 AND m.abt_tel=7";
-*/
-// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list";
-// Raum zu Mitarbeiter und nicht zu Telefon
- if ($edit) // auch ehemalige MA
-// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list";
- $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ag
- WHERE 1=1";
- else
-// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ma_raum";
- $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv
- FROM v_tel_list_ag WHERE aktiv > 0";
- if ($filter)
- {
- if ($fnum > 3)
- $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'%$filter%'";
- else
- $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'$filter%'";
- }
- else $wher = "";
- // intern/extern
- $ip=getenv("REMOTE_ADDR");
- $ippart=explode(".",$ip);
- if (($ippart[0] == 141 && $ippart[1] == 14) || ($ippart[0] == 172 && $ippart[1] == 16))
- $wip = "";
- else
- $wip = " AND public=1 ";
-
- if ($sort == 2) $so = "name COLLATE latin1_general_ci $dir, 1, 3, 5, 6";
-// if ($sort == 2) $sort = "2, 3, 5";
- elseif ($sort == 5) $so = "5 $dir, 6, name COLLATE latin1_general_ci, 1, 3";
-// if ($sort == 5) $sort = "5, 2, 3";
- else $so = "$sort $dir ";
- if ($so) $ord = " ORDER BY $so, IFNULL(sort,99), 7 "; // immer nach Telefon-Nr als 2.
-
- $sql .= $wher . $wip . $ord;
-// echo "sql = $sql<br /><br />";
- $result = $dbc ->queryObjectArray($sql);
-
- if ($result)
- {
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
- $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige
-
- echo "<div align='center'>\n";
- echo "<p><b>Mitarbeiter/Objekte - Telefonliste</b></p>\n";
-
- echo "<table border='0' cellspacing='0'>\n";
- echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
- können Sie nach allen Spalten auf- bzw. absteigend sortieren</td></tr>
- <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach allen Spalten der Liste</td></tr>";
- if ($edit)
- {
- echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</td></tr>";
- echo "<tr><td class='bigger'><span style='color: orange; font-size: 1em;'>Orange</span> <span style='background-color: #FFCC88; font-size: 1em;'>hinterlegte</span> Zeilen markieren ausgeschiedenen Mitarbeiter</td></tr>";
- }
- echo "<tr><td class='bigger'><span style='color: red; font-size: 1em;'>Rote</span> Telefon-/Fax-Nummern sind nur intern sichtbar</td></tr>";
- echo "</table>\n";
-
- echo "</div><p> <a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n<div align='center'>\n";
- if (isset($fnum) && $fnum>1 && !$filter && !$subf)
- {
- // Formular anzeigen fuer Filterbegriff
- $text = $fields[$fnum];
- $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
- echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
- echo "<input type='hidden' name='s' value='$sort'>";
- echo "<input type='hidden' name='d' value='$dir'>";
- echo "<input type='hidden' name='f' value='$fnum'>";
- echo "<input type='hidden' name='e' value='$edit'>";
- echo "<table width=\"45%\" border=\"0\">\n";
- echo "<tr><td>filtern nach $text: </td>";
- echo "<td><input id='filter' name='filter' type=\"text\" size=\"30\" maxlength=\"30\" value=\"$filter\"/></td>";
-/*
- echo "<td>Zeilen/Seite? <select name='z'>\n";
- foreach ($azeil as $key=>$val)
- {
- if ($key == $zeil) $select = "selected"; else $select = "";
- echo "<option $select value='$key'>$val</option>\n";
- }
- echo "</select></td>\n";
-*/
- echo "<td><input class=\"button\" type=\"hidden\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
- echo "</form>\n";
- echo "<p> </p>\n";
- }
-
- // Schnellsuche Namen
- echo "<p>";
- for ($j=65; $j<91; $j++)
- {
- echo "<a href='". $_SERVER["PHP_SELF"] . "?e=$edit&f=2&b=". chr($j)."' target=\"_self\" title=\"Telefonliste\" class=\"sc\">".chr($j)." </a>";
- }
- echo "</p>\n";
- echo "<table width='75%'>\n";
-
- if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
-
- // Listenkopf generieren
- echo "<tr bgcolor='#68ACBF'>";
- tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit);
- tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit);
- tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit);
- tab_column(6,"Arbeitsgruppe",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit);
- tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit);
- tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit);
- tab_column(7,"Telefon/Fax",$sort,$dir,7,$fnum,$filter,$start,$zeil,$edit);
- if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
- echo "<th> </th>";
- echo "</tr>\n";
- foreach ($result as $row)
- {
- if ($row->persknr != $vpnr)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- $titel = ($row->titel)? ", $row->titel" : "" ;
- $email = ($row->email)? "<a href='mailto:$row->email'>$row->name$titel</a>" : "$row->name$titel";
- if ($row->aktiv == 0) $class = " class='bgmark'"; else $class="";
- echo "<tr$class bgcolor='" . $bg . "'><td>$email</td>";
- echo "<td>$row->vorname</td>";
- echo "<td>$row->abt_name</td>";
- echo "<td>$row->ag</td>";
- // echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>";
- $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
- $rot = ($row->public)? "" : " class=\"red\"";
- echo "<td>$row->geb_ID</td>";
- echo "<td>$row->raum_nr</td>";
- if ($row->sort == 1)
- echo "<td$rot><b>$row->telefon_nr</b> $ttyp</td>";
- else
- echo "<td$rot>$row->telefon_nr $ttyp</td>";
- if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
- echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
- echo "</tr>\n";
- }
- else
- {
- if ($vabt != $row->abt_name) $abt = $row->abt_name;
- else $abt = ' ';
- if ($vag != $row->ag) $ag = $row->ag;
- else $ag = ' ';
- if ($vtel != $row->telefon_nr)
- {
- $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
- $rot = ($row->public)? "" : " class=\"red\"";
- $tel = $row->telefon_nr;
- }
- else
- {
- $tel = ' ';
- $ttyp = '';
- }
- echo "<tr bgcolor='" . $bg . "'><td colspan='2'> </td>";
- echo "<td>$abt</td>";
- echo "<td>$ag</td>";
- echo "<td> </td>";
- echo "<td> </td>";
- if ($row->sort == 1)
- echo "<td$rot><b>$tel</b> $ttyp</td>";
- else
- echo "<td$rot>$tel $ttyp</td>";
- if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
- echo "<td> </td>";
- echo "</tr>\n";
- }
- $vpnr = $row->persknr;
- $vabt = $row->abt_name;
- $vag = $row->ag;
- $vtel = $row->telefon_nr;
- }
- echo "</table></div>\n";
- echo "<p> <a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n";
-
- }
- else
- {
- echo "<div align=center>";
- if ($dbc -> error)
- echo "error: " . $dbc -> error . "<br />\n";
- else
- {
- echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
- echo " <a href=\"" . $_SERVER["PHP_SELF"] . "?e=$edit\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n";
- }
- echo "</div>";
- }
-
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 11/2012
+ *
+ * Telefonliste ohne Anmeldung
+ *
+ * $_GET["e"] = 1, ='editieren', muss gesetzt sein
+ *
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ if (isset($_GET["i"]) && $_GET["i"]) $edit = $_GET["i"]; // wegen tab_column, "i" als "e" missbraucht -> editieren ermoeglichen
+ if (!$edit) $edit = $_GET["e"];
+ if (!$edit) $edit = $_POST["e"];
+ if (isset($edit) && $edit)
+ {
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]."?e=$edit");
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+// print_r ($_SESSION); echo "<br />";
+ }
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+
+ <title>MA/O-Telefonliste</title>
+</head>
+
+<body onload="document.ffilter.filter.focus();">
+
+<?php
+ if (isset($edit) && $edit)
+ {
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n";
+ }
+
+ // Felder, nach denen gefiltert werden kann
+ $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Arbeitsgruppe",7=>"Telefon/Fax",9=>"Haus", 10=>"Raum");
+// $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr");
+ $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"ag",7=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr");
+
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ if (!isset($sort) && !$sort) $sort = $_POST["s"];
+
+ $dir = $_GET["d"]; // Sortierrichtung
+ if (!isset($dir) && !$dir) $dir = $_POST["d"];
+
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
+
+ $filter = $_POST["filter"];
+ if (!isset($filter) && !$filter) $filter = $_GET["b"];
+
+ $subf = $_POST["subf"]; // submit
+
+ if (!isset($fnum) || !$fnum) $fnum = 1;
+ if (!isset($filter) || !$filter) $filter = "";
+ if (!isset($sort) || !$sort) $sort = 2; // Name
+ if (!$dir || $dir < "!") $dir = "";
+// print_r ($_REQUEST); echo "<br /><br />";
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+
+ $dbc = new dbconnection();
+/*
+ $sql = "SELECT m.persknr, TRIM(nachname) as name, vorname, titel, abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email
+ FROM Mitarbeiter m LEFT OUTER JOIN
+ Abteilung a ON m.abt_tel=a.abt_ID LEFT OUTER JOIN
+ MA_Telefon mt ON m.persknr=mt.persknr LEFT OUTER JOIN
+ Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN
+ Raum r ON t.raum_ID = r.raum_ID
+ WHERE aktiv>0 AND (m.abt_tel <> 7 OR m.abt_tel IS NULL)
+ UNION
+ SELECT m.persknr, TRIM(nachname) as name, vorname, titel, IFNULL(rag_bez,'INF') as abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email
+ FROM Mitarbeiter m LEFT OUTER JOIN
+ MA_Telefon mt ON m.persknr=mt.persknr INNER JOIN
+ Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN
+ Raum r ON t.raum_ID = r.raum_ID LEFT OUTER JOIN
+ MA_RaumArbGruppe ma ON m.persknr=ma.persknr LEFT OUTER JOIN
+ RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID
+ WHERE aktiv>0 AND m.abt_tel=7";
+*/
+// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list";
+// Raum zu Mitarbeiter und nicht zu Telefon
+ if ($edit) // auch ehemalige MA
+// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list";
+ $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ag
+ WHERE 1=1";
+ else
+// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ma_raum";
+ $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv
+ FROM v_tel_list_ag WHERE aktiv > 0";
+ if ($filter)
+ {
+ if ($fnum > 3)
+ $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'%$filter%'";
+ else
+ $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'$filter%'";
+ }
+ else $wher = "";
+ // intern/extern
+ $ip=getenv("REMOTE_ADDR");
+ $ippart=explode(".",$ip);
+ if (($ippart[0] == 141 && $ippart[1] == 14) || ($ippart[0] == 172 && $ippart[1] == 16))
+ $wip = "";
+ else
+ $wip = " AND public=1 ";
+
+ if ($sort == 2) $so = "name COLLATE latin1_general_ci $dir, 1, 3, 5, 6";
+// if ($sort == 2) $sort = "2, 3, 5";
+ elseif ($sort == 5) $so = "5 $dir, 6, name COLLATE latin1_general_ci, 1, 3";
+// if ($sort == 5) $sort = "5, 2, 3";
+ else $so = "$sort $dir ";
+ if ($so) $ord = " ORDER BY $so, IFNULL(sort,99), 7 "; // immer nach Telefon-Nr als 2.
+
+ $sql .= $wher . $wip . $ord;
+// echo "sql = $sql<br /><br />";
+ $result = $dbc ->queryObjectArray($sql);
+
+ if ($result)
+ {
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige
+
+ echo "<div align='center'>\n";
+ echo "<p><b>Mitarbeiter/Objekte - Telefonliste</b></p>\n";
+
+ echo "<table border='0' cellspacing='0'>\n";
+ echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
+ können Sie nach allen Spalten auf- bzw. absteigend sortieren</td></tr>
+ <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach allen Spalten der Liste</td></tr>";
+ if ($edit)
+ {
+ echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</td></tr>";
+ echo "<tr><td class='bigger'><span style='color: orange; font-size: 1em;'>Orange</span> <span style='background-color: #FFCC88; font-size: 1em;'>hinterlegte</span> Zeilen markieren ausgeschiedenen Mitarbeiter</td></tr>";
+ }
+ echo "<tr><td class='bigger'><span style='color: red; font-size: 1em;'>Rote</span> Telefon-/Fax-Nummern sind nur intern sichtbar</td></tr>";
+ echo "</table>\n";
+
+ echo "</div><p> <a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n<div align='center'>\n";
+ if (isset($fnum) && $fnum>1 && !$filter && !$subf)
+ {
+ // Formular anzeigen fuer Filterbegriff
+ $text = $fields[$fnum];
+ $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
+ echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
+ echo "<input type='hidden' name='s' value='$sort'>";
+ echo "<input type='hidden' name='d' value='$dir'>";
+ echo "<input type='hidden' name='f' value='$fnum'>";
+ echo "<input type='hidden' name='e' value='$edit'>";
+ echo "<table width=\"45%\" border=\"0\">\n";
+ echo "<tr><td>filtern nach $text: </td>";
+ echo "<td><input id='filter' name='filter' type=\"text\" size=\"30\" maxlength=\"30\" value=\"$filter\"/></td>";
+/*
+ echo "<td>Zeilen/Seite? <select name='z'>\n";
+ foreach ($azeil as $key=>$val)
+ {
+ if ($key == $zeil) $select = "selected"; else $select = "";
+ echo "<option $select value='$key'>$val</option>\n";
+ }
+ echo "</select></td>\n";
+*/
+ echo "<td><input class=\"button\" type=\"hidden\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
+ echo "</form>\n";
+ echo "<p> </p>\n";
+ }
+
+ // Schnellsuche Namen
+ echo "<p>";
+ for ($j=65; $j<91; $j++)
+ {
+ echo "<a href='". $_SERVER["PHP_SELF"] . "?e=$edit&f=2&b=". chr($j)."' target=\"_self\" title=\"Telefonliste\" class=\"sc\">".chr($j)." </a>";
+ }
+ echo "</p>\n";
+ echo "<table width='75%'>\n";
+
+ if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
+
+ // Listenkopf generieren
+ echo "<tr bgcolor='#68ACBF'>";
+ tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(6,"Arbeitsgruppe",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(7,"Telefon/Fax +49 30 8413",$sort,$dir,7,$fnum,$filter,$start,$zeil,$edit);
+ if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
+ echo "<th> </th>";
+ echo "</tr>\n";
+ foreach ($result as $row)
+ {
+ if ($row->persknr != $vpnr)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ $titel = ($row->titel)? ", $row->titel" : "" ;
+ $email = ($row->email)? "<a href='mailto:$row->email'>$row->name$titel</a>" : "$row->name$titel";
+ if ($row->aktiv == 0) $class = " class='bgmark'"; else $class="";
+ echo "<tr$class bgcolor='" . $bg . "'><td>$email</td>";
+ echo "<td>$row->vorname</td>";
+ echo "<td>$row->abt_name</td>";
+ echo "<td>$row->ag</td>";
+ // echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>";
+ $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
+ $rot = ($row->public)? "" : " class=\"red\"";
+ echo "<td>$row->geb_ID</td>";
+ echo "<td>$row->raum_nr</td>";
+ if ($row->sort == 1)
+ echo "<td$rot><b>$row->telefon_nr</b> $ttyp</td>";
+ else
+ echo "<td$rot>$row->telefon_nr $ttyp</td>";
+ if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
+ echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
+ echo "</tr>\n";
+ }
+ else
+ {
+ if ($vabt != $row->abt_name) $abt = $row->abt_name;
+ else $abt = ' ';
+ if ($vag != $row->ag) $ag = $row->ag;
+ else $ag = ' ';
+ if ($vtel != $row->telefon_nr)
+ {
+ $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
+ $rot = ($row->public)? "" : " class=\"red\"";
+ $tel = $row->telefon_nr;
+ }
+ else
+ {
+ $tel = ' ';
+ $ttyp = '';
+ }
+ echo "<tr bgcolor='" . $bg . "'><td colspan='2'> </td>";
+ echo "<td>$abt</td>";
+ echo "<td>$ag</td>";
+ echo "<td> </td>";
+ echo "<td> </td>";
+ if ($row->sort == 1)
+ echo "<td$rot><b>$tel</b> $ttyp</td>";
+ else
+ echo "<td$rot>$tel $ttyp</td>";
+ if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
+ echo "<td> </td>";
+ echo "</tr>\n";
+ }
+ $vpnr = $row->persknr;
+ $vabt = $row->abt_name;
+ $vag = $row->ag;
+ $vtel = $row->telefon_nr;
+ }
+ echo "</table></div>\n";
+ echo "<p> <a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n";
+
+ }
+ else
+ {
+ echo "<div align=center>";
+ if ($dbc -> error)
+ echo "error: " . $dbc -> error . "<br />\n";
+ else
+ {
+ echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
+ echo " <a href=\"" . $_SERVER["PHP_SELF"] . "?e=$edit\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n";
+ }
+ echo "</div>";
+ }
+
+?>
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/raum_flist_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/raum_flist_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,400 +1,400 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 02/2012
- *
- * Liste Raeume + Aenderungsform
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rr",$_SESSION["recht"]) && !in_array("re",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
-
- <title>Reinigungsdaten edit</title>
-</head>
-
-<body onload="foc();">
- <script>
- function foc() {
- if (document.getElementById('sub')) document.getElementById('sub').focus();
- if (document.getElementById('filter')) document.getElementById('filter').focus();
-// if (document.ffilter.filter.value > "") document.ffilter.filter.focus();
- };
- </script>
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/house.png\" border=\"0\" alt=\"Raumdaten\" title=\"Raumdaten\"/></div>\n";
-
- // Aenderungsformular
- $raum = $_POST["raum"];
- $rid = $_GET["i"];
- if (!$rid) $rid = $_POST["i"];
- if (!$rid) $rid=0;
- $sub = $_POST["eintragen"]; // submit Raum-Form
- $ok = $_POST["ok"];
- if (!$raum['okn']) $ok=false;
-
- // Felder, nach denen gefiltert werden kann
- $fields = array(4=>"Gebäude",5=>"Raum-Typ",8=>"Reinigung-Typ",9=>"Reinigung-Kategorie",10=>"Reinigung-Turnus",11=>"Bodentyp");
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = $_POST["z"];
- if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"];
- if (!$start) $start = $_POST["st"];
- if (!$start) $start=0;
-
- $sort = $_GET["s"]; // Sortierung nach Spalte
- if (!isset($sort) && !$sort) $sort = $_POST["s"];
-
- $dir = $_GET["d"]; // Sortierrichtung
- if (!isset($dir) && !$dir) $dir = $_POST["d"];
-
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
-
- $filter = $_POST["filter"];
- if (!isset($filter) && !$filter) $filter = $_GET["b"];
-
- $subf = $_POST["subf"]; // submit
-
- if (!isset($fnum) || !$fnum) $fnum = 1;
- if (!isset($filter) || !$filter) $filter = "";
- if (!isset($sort) || !$sort) $sort = 2;
- if (!isset($dir) || !$dir) $dir = "";
-
-/*
- $sql = "SELECT COUNT(*) AS anzr FROM fhiiqm.Raum";
- $anz = $dbc -> querySingleItem($sql);
-
- $sql = "SELECT raum_ID, raum_nr, raum_name, geb_ID, r.raumtyp_ID, raumtyp_bez, raum_flaeche, raum_file
- FROM `fhiiqm`.`Raum` r LEFT OUTER JOIN fhiiqm.Raum_Typ t ON r.raumtyp_ID = t.raumtyp_ID
- ORDER BY geb_ID, raum_nr LIMIT $start,20 ";
-*/
-
- include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- $dbc = new dbconnection();
-
- if ($ok && $sub) // Daten Raum - Reinigung speichern
- {
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($raum['reityp']== -1) $raum['reityp'] = null;
- if ($raum['reikat']== -1) $raum['reikat'] = null;
- if ($raum['reitur']== -1) $raum['reitur'] = null;
- if ($raum['boden']== -1) $raum['boden'] = null;
- // reinigung aendern
- $stmt -> prepare("UPDATE fhiiqm.Raum SET
- reinigung_typ_ID = ?,
- reinigung_kat = ?,
- reinigung_turnus_ID = ?,
- boden_typ_ID = ?
- WHERE raum_ID=?");
- $stmt -> bind_param('ssdii',$raum['reityp'],$raum["reikat"],$raum["reitur"],$raum["boden"],$rid);
- $res = $stmt -> execute();
- if ($stmt->error) echo " UPDATE Raum, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
- $stmt -> free_result(); // wegen weiterer query
- $sql = "SELECT raum_nr, raum_name, geb_ID FROM fhiiqm.Raum WHERE raum_ID = " . $rid;
- $result = $dbc -> queryObjectArray($sql);
- foreach ($result as $ro)
- {
- if ($res)
- {
- echo "<p class='green'> <b>UPDATE: Daten zu Haus '".$ro->geb_ID.", ".$ro->raum_nr.", ".$ro->raum_name."' wurden erfolgreich gespeichert.</b></p>\n";
- unset($raum);
- $rid = 0;
- $sub = 0;
- }
- else
- echo "<p class='red'> <b>UPDATE: Daten zu Haus '".$ro->geb_ID.", ".$ro->raum_nr.", ".$ro->raum_name."' konnten nicht gespeichert werden!</b></p>\n";
- }
- }
- }
-// echo "sort=$sort, dir=$dir, fnum=$fnum, filter=$filter, start=$start, zeil=$zeil<br />";
- $sql = "CALL raum_flist($sort,'" . $dir . "',$fnum, '" . $filter . "',$start,$zeil,@anz);";
- // Parameter: Nr. Sortfeld, Sortierrichtung, Nr. Filterfeld, Filterbegriff, (StartNr DS) -1, Anzahl Zeilen=DS, Anzahl gefundener Raeume
- // liefert: raum_ID, raum_nr, raum_name, geb_ID, raumtyp_bez, raum_flaeche, raum_file, reinigung_typ_ID, reinigung_typ_bez
-// echo "sql = $sql<br />";
- $result = $dbc ->queryObjectArray($sql);
-
- if ($result)
- {
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
-
- echo "<div align='center'>\n";
- echo "<p><b>Liste der erfassten Räume mit Reinigungsdaten</b></p>\n";
-
- echo "<table border='0' cellspacing='0'>\n";
- echo "<tr><td class='bigger'>Mittels '<img src='/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
- können Sie nach jeder Spalte auf- bzw. absteigend sortieren</td></tr>
- <tr><td class='bigger'>'<img src='/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach ausgewählten Spalten der Liste</td></tr>
- <tr><td> </td></tr>
- <tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Reinigungs-Daten</td></tr>\n";
- echo "</table>\n";
-
- $ranz = $dbc -> querySingleItem("SELECT @anz");
- printf ("<p>Es wurden %s Räume gefunden.</p>", $ranz);
-
- if (isset($fnum) && $fnum>1 && !$filter && !$subf)
- {
- // Formular anzeigen fuer Filterbegriff
- $text = $fields[$fnum];
- $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
- echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
- echo "<input type='hidden' name='s' value='$sort'>";
- echo "<input type='hidden' name='d' value='$dir'>";
- echo "<input type='hidden' name='f' value='$fnum'>";
- echo "<table width=\"35%\" border=\"0\">\n";
- echo "<tr><td>filtern nach $text: </td>";
- echo "<td><input id='filter' name='filter' type=\"text\" size=\"30\" maxlength=\"30\" value=\"$filter\"/></td>";
- echo "<td>Zeilen/Seite? <select name='z'>\n";
- foreach ($azeil as $key=>$val)
- {
- if ($key == $zeil) $select = "selected"; else $select = "";
- echo "<option $select value='$key'>$val</option>\n";
- }
- echo "</select></td>\n";
- echo "<td><input class=\"button\" type=\"submit\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
- echo "</form>\n";
- echo "<p> </p>\n";
- }
- echo "<table width='99%'>\n";
-
- if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td><tr>\n";
-
- // Listenkopf generieren
- echo "<tr bgcolor='#68ACBF'>";
- tab_column(2,"Raum-Nr.",$sort,$dir,0,$fnum,$filter,$start,$zeil);
- tab_column(3,"Bezeichnung",$sort,$dir,0,$fnum,$filter,$start,$zeil);
- tab_column(4,"Haus",$sort,$dir,4,$fnum,$filter,$start,$zeil);
- tab_column(5,"Raum-Typ",$sort,$dir,5,$fnum,$filter,$start,$zeil);
- tab_column(8,"Reinigungs-Typ",$sort,$dir,8,$fnum,$filter,$start,$zeil);
- tab_column(9,"Reinig.-Kat.",$sort,$dir,9,$fnum,$filter,$start,$zeil);
- tab_column(10,"Reinig.-Turn.",$sort,$dir,10,$fnum,$filter,$start,$zeil);
- tab_column(11,"Boden-Typ",$sort,$dir,11,$fnum,$filter,$start,$zeil);
- tab_column(12,"Reinig.Fl.(m<sup>2</sup>)",$sort,$dir,0,$fnum,$filter,$start,$zeil);
- tab_column(6,"Fläche(m<sup>2</sup>)",$sort,$dir,0,$fnum,$filter,$start,$zeil);
- tab_column(7,"Raumplan",$sort,$dir,0,$fnum,$filter,$start,$zeil);
- echo "<th> </th></tr>\n";
-
-// echo "<tr bgcolor='#68ACBF'><th>Raum-Nr.</th><th>Bezeichnung</th><th>Haus</th><th>Typ</th><th>Fläche (m<sup>2</sup>)</th><th>Raumplan</th><th> </th>
-// </tr>\n";
- foreach ($result as $row)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- if ($rid == $row->raum_ID) $bg = "#D6E6E6";
- echo "<tr bgcolor='" . $bg . "'><td class='left'><b>$row->raum_nr</b></td>";
- echo "<td>$row->raum_name</td>";
- echo "<td>$row->geb_ID</td>";
- echo "<td>$row->raumtyp_bez</td>";
- if ($rid == $row->raum_ID)
- { //Aenderungsform
- $okn = true;
- if (!$raum['reityp']) $raum['reityp'] = $row->reinigung_typ_ID;
- if (!$raum['reikat']) $raum['reikat'] = $row->reinigung_kat;
- if (!$raum['reitur']) $raum['reitur'] = $row->reinigung_turnus_ID;
- if (!$raum['boden']) $raum['boden'] = $row->boden_typ_ID;
- echo "<form action='". $_SERVER['PHP_SELF'] ."' method='post' enctype='application/x-www-form-urlencoded' name='frr'>\n";
- echo "<td class='red'><select name='raum[reityp]' id='rrtyp'>";
- if (is_null($raum['reityp'])) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT reinigung_typ_ID, reinigung_typ_bez FROM fhiiqm.Reinigung_Typ ORDER BY 1";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $ro)
- {
- if ($ro->reinigung_typ_ID == $raum['reityp'])
- echo "<option selected value=\"$ro->reinigung_typ_ID\">$ro->reinigung_typ_ID: $ro->reinigung_typ_bez</option>\n";
- else
- echo "<option value=\"$ro->reinigung_typ_ID\">$ro->reinigung_typ_ID: $ro->reinigung_typ_bez</option>\n";
- }
- }
- echo "</select><br />";
- echo "<input type=\"hidden\" name=\"raum[okn]\" value=\"$okn\"/>\n";
- echo "<input type=\"hidden\" name=\"i\" value=\"$rid\"/>\n"; // nur gewaehlte Raum-ID
- echo "<input type='hidden' name='s' value='$sort'>\n";
- echo "<input type='hidden' name='d' value='$dir'>\n";
- echo "<input type='hidden' name='f' value='$fnum'>\n";
- echo "<input type='hidden' name='filter' value='$filter'>\n";
- echo "<input type='hidden' name='st' value='$start'>\n";
- echo "<input type='hidden' name='z' value='$zeil'>\n";
- echo "<input type='hidden' name='subf' value='finden'>\n";
- if ($sub)
- {
- $frage = "Alle Angaben ok?";
- echo "$frage<input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo "/> ";
- }
- echo "<input class=\"button\" type=\"submit\" name=\"eintragen\" id=\"sub\" value=\"eintragen\" /></td>";
- }
- else
- {
- if ($row->reinigung_typ_ID)
- echo "<td>$row->reinigung_typ_ID: $row->reinigung_typ_bez</td>";
- else echo "<td> </td>";
- }
- if ($rid == $row->raum_ID)
- { //Aenderungsform
- echo "<td><select name='raum[reikat]'>";
- if (is_null($raum['reikat'])) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SHOW COLUMNS FROM Raum WHERE Field = 'reinigung_kat'";
- if ($result = $dbc->queryRow($sql))
- {
- foreach ($result as $ro)
- $arr=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/","\\2",$ro[1]));
- foreach ($arr as $kat)
- {
- if ($kat == $raum["reikat"])
- echo "<option selected value=\"$kat\">$kat</option>\n";
- else
- echo "<option value=\"$kat\">$kat</option>\n";
- }
- }
- echo "</select></td>";
- }
- else
- {
- if ($row->reinigung_kat)
- echo "<td>$row->reinigung_kat</td>";
- else echo "<td> </td>";
- }
- if ($rid == $row->raum_ID)
- {
- echo "<td><select name='raum[reitur]'>";
- if (is_null($raum['reitur'] == -1)) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT reinigung_turnus_ID, reinigung_turnus_bez FROM fhiiqm.Reinigung_Turnus ORDER BY 1";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $ro)
- {
- if ($ro->reinigung_turnus_ID == $raum['reitur'])
- echo "<option selected value=\"$ro->reinigung_turnus_ID\">$ro->reinigung_turnus_bez</option>\n";
- else
- echo "<option value=\"$ro->reinigung_turnus_ID\">$ro->reinigung_turnus_bez</option>\n";
- }
- }
- echo "</select></td>";
- }
- else
- {
- if ($row->reinigung_turnus_bez)
- echo "<td>$row->reinigung_turnus_bez</td>";
- else echo "<td> </td>";
- }
- if ($rid == $row->raum_ID)
- {
- echo "<td><select name='raum[boden]'>";
- if (is_null($raum['boden'])) $select = " selected "; else $select = "";
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT boden_typ_ID, boden_typ_bez FROM fhiiqm.Boden_Typ ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $ro)
- {
- if ($ro->boden_typ_ID == $raum['boden'])
- echo "<option selected value=\"$ro->boden_typ_ID\">$ro->boden_typ_bez</option>\n";
- else
- echo "<option value=\"$ro->boden_typ_ID\">$ro->boden_typ_bez</option>\n";
- }
- }
- echo "</select></td>";
-
- echo "</form>\n";
- }
- else
- {
- if ($row->boden_typ_bez)
- echo "<td>$row->boden_typ_bez</td>";
- else echo "<td> </td>";
- }
- if ($row->reinigung_flaeche)
- echo "<td class='right'>" . number_format($row->reinigung_flaeche,2,',','') . "</td>";
- else echo "<td> </td>";
- echo "<td class='right'>" . str_replace(".",",",$row->raum_flaeche) . "</td>";
- if (file_exists("raeume/".$row->raum_file))
- {
- $raum_file = substr($row->raum_file,strpos($row->raum_file,"_")+1);
- echo "<td><a href=\"raeume/$row->raum_file\">$raum_file</td>";
- }
- else
- echo "<td>$row->raum_file</td>";
- if ($rid == $row->raum_ID)
- echo "<td> </td></tr>\n";
- else
- echo "<td><a href='".$_SERVER["PHP_SELF"]."?i=$row->raum_ID&s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil'>
- <img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td></tr>\n";
- }
- echo "</table></div>\n";
-
- echo "<br /> ";
-
- // Sortierung und Filter aus $_GET fuer weitere Seiten
- foreach ($_GET as $key=>$val)
- {
- if ($key != "st") $liste .= "&" . $key ."=".$val;
- }
- // Sortierung und Filter aus $_POST fuer weitere Seiten
- if ($subf)
- foreach ($_POST as $key=>$val)
- {
- if ($key != "st" && $key != "subf" && $key != "filter") $liste .= "&" . $key ."=".$val;
- if ($key == "filter") $liste .= "&b=" . $val;
- }
-
- // Links auf andere Seiten generieren
- liste_links($start,$zeil,$ranz,$liste);
-
- }
- else
- {
- if ($dbc -> error)
- echo "error: " . $dbc -> error . "<br />\n";
- else
- {
- echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
- echo " <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Raumliste\">Raumliste</a></p>\n";
- }
-
- }
- $dbc -> close();
-
-// echo "<br />rid = $rid, row[raum_ID] = $row->raum_ID<br />";
-
- if (!is_null($_SESSION["recht"]) && in_array("re",$_SESSION["recht"]))
- echo "<p> <a href=\"raum_ins.php\" target=\"_self\" title=\"Raum erfassen\" class=\"sc\">Weiteren Raum erfassen</a></p>\n";
-
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 02/2012
+ *
+ * Liste Raeume + Aenderungsform
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rr",$_SESSION["recht"]) && !in_array("re",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+
+ <title>Reinigungsdaten edit</title>
+</head>
+
+<body onload="foc();">
+ <script>
+ function foc() {
+ if (document.getElementById('sub')) document.getElementById('sub').focus();
+ if (document.getElementById('filter')) document.getElementById('filter').focus();
+// if (document.ffilter.filter.value > "") document.ffilter.filter.focus();
+ };
+ </script>
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/house.png\" border=\"0\" alt=\"Raumdaten\" title=\"Raumdaten\"/></div>\n";
+
+ // Aenderungsformular
+ $raum = $_POST["raum"];
+ $rid = $_GET["i"];
+ if (!$rid) $rid = $_POST["i"];
+ if (!$rid) $rid=0;
+ $sub = $_POST["eintragen"]; // submit Raum-Form
+ $ok = $_POST["ok"];
+ if (!$raum['okn']) $ok=false;
+
+ // Felder, nach denen gefiltert werden kann
+ $fields = array(4=>"Gebäude",5=>"Raum-Typ",8=>"Reinigung-Typ",9=>"Reinigung-Kategorie",10=>"Reinigung-Turnus",11=>"Bodentyp");
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = $_POST["z"];
+ if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"];
+ if (!$start) $start = $_POST["st"];
+ if (!$start) $start=0;
+
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ if (!isset($sort) && !$sort) $sort = $_POST["s"];
+
+ $dir = $_GET["d"]; // Sortierrichtung
+ if (!isset($dir) && !$dir) $dir = $_POST["d"];
+
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
+
+ $filter = $_POST["filter"];
+ if (!isset($filter) && !$filter) $filter = $_GET["b"];
+
+ $subf = $_POST["subf"]; // submit
+
+ if (!isset($fnum) || !$fnum) $fnum = 1;
+ if (!isset($filter) || !$filter) $filter = "";
+ if (!isset($sort) || !$sort) $sort = 2;
+ if (!isset($dir) || !$dir) $dir = "";
+
+/*
+ $sql = "SELECT COUNT(*) AS anzr FROM fhiiqm.Raum";
+ $anz = $dbc -> querySingleItem($sql);
+
+ $sql = "SELECT raum_ID, raum_nr, raum_name, geb_ID, r.raumtyp_ID, raumtyp_bez, raum_flaeche, raum_file
+ FROM `fhiiqm`.`Raum` r LEFT OUTER JOIN fhiiqm.Raum_Typ t ON r.raumtyp_ID = t.raumtyp_ID
+ ORDER BY geb_ID, raum_nr LIMIT $start,20 ";
+*/
+
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ $dbc = new dbconnection();
+
+ if ($ok && $sub) // Daten Raum - Reinigung speichern
+ {
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($raum['reityp']== -1) $raum['reityp'] = null;
+ if ($raum['reikat']== -1) $raum['reikat'] = null;
+ if ($raum['reitur']== -1) $raum['reitur'] = null;
+ if ($raum['boden']== -1) $raum['boden'] = null;
+ // reinigung aendern
+ $stmt -> prepare("UPDATE fhiiqm.Raum SET
+ reinigung_typ_ID = ?,
+ reinigung_kat = ?,
+ reinigung_turnus_ID = ?,
+ boden_typ_ID = ?
+ WHERE raum_ID=?");
+ $stmt -> bind_param('ssdii',$raum['reityp'],$raum["reikat"],$raum["reitur"],$raum["boden"],$rid);
+ $res = $stmt -> execute();
+ if ($stmt->error) echo " UPDATE Raum, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
+ $stmt -> free_result(); // wegen weiterer query
+ $sql = "SELECT raum_nr, raum_name, geb_ID FROM fhiiqm.Raum WHERE raum_ID = " . $rid;
+ $result = $dbc -> queryObjectArray($sql);
+ foreach ($result as $ro)
+ {
+ if ($res)
+ {
+ echo "<p class='green'> <b>UPDATE: Daten zu Haus '".$ro->geb_ID.", ".$ro->raum_nr.", ".$ro->raum_name."' wurden erfolgreich gespeichert.</b></p>\n";
+ unset($raum);
+ $rid = 0;
+ $sub = 0;
+ }
+ else
+ echo "<p class='red'> <b>UPDATE: Daten zu Haus '".$ro->geb_ID.", ".$ro->raum_nr.", ".$ro->raum_name."' konnten nicht gespeichert werden!</b></p>\n";
+ }
+ }
+ }
+// echo "sort=$sort, dir=$dir, fnum=$fnum, filter=$filter, start=$start, zeil=$zeil<br />";
+ $sql = "CALL raum_flist($sort,'" . $dir . "',$fnum, '" . $filter . "',$start,$zeil,@anz);";
+ // Parameter: Nr. Sortfeld, Sortierrichtung, Nr. Filterfeld, Filterbegriff, (StartNr DS) -1, Anzahl Zeilen=DS, Anzahl gefundener Raeume
+ // liefert: raum_ID, raum_nr, raum_name, geb_ID, raumtyp_bez, raum_flaeche, raum_file, reinigung_typ_ID, reinigung_typ_bez
+// echo "sql = $sql<br />";
+ $result = $dbc ->queryObjectArray($sql);
+
+ if ($result)
+ {
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+
+ echo "<div align='center'>\n";
+ echo "<p><b>Liste der erfassten Räume mit Reinigungsdaten</b></p>\n";
+
+ echo "<table border='0' cellspacing='0'>\n";
+ echo "<tr><td class='bigger'>Mittels '<img src='/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
+ können Sie nach jeder Spalte auf- bzw. absteigend sortieren</td></tr>
+ <tr><td class='bigger'>'<img src='/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach ausgewählten Spalten der Liste</td></tr>
+ <tr><td> </td></tr>
+ <tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Reinigungs-Daten</td></tr>\n";
+ echo "</table>\n";
+
+ $ranz = $dbc -> querySingleItem("SELECT @anz");
+ printf ("<p>Es wurden %s Räume gefunden.</p>", $ranz);
+
+ if (isset($fnum) && $fnum>1 && !$filter && !$subf)
+ {
+ // Formular anzeigen fuer Filterbegriff
+ $text = $fields[$fnum];
+ $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
+ echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
+ echo "<input type='hidden' name='s' value='$sort'>";
+ echo "<input type='hidden' name='d' value='$dir'>";
+ echo "<input type='hidden' name='f' value='$fnum'>";
+ echo "<table width=\"35%\" border=\"0\">\n";
+ echo "<tr><td>filtern nach $text: </td>";
+ echo "<td><input id='filter' name='filter' type=\"text\" size=\"30\" maxlength=\"30\" value=\"$filter\"/></td>";
+ echo "<td>Zeilen/Seite? <select name='z'>\n";
+ foreach ($azeil as $key=>$val)
+ {
+ if ($key == $zeil) $select = "selected"; else $select = "";
+ echo "<option $select value='$key'>$val</option>\n";
+ }
+ echo "</select></td>\n";
+ echo "<td><input class=\"button\" type=\"submit\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
+ echo "</form>\n";
+ echo "<p> </p>\n";
+ }
+ echo "<table width='99%'>\n";
+
+ if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td><tr>\n";
+
+ // Listenkopf generieren
+ echo "<tr bgcolor='#68ACBF'>";
+ tab_column(2,"Raum-Nr.",$sort,$dir,0,$fnum,$filter,$start,$zeil);
+ tab_column(3,"Bezeichnung",$sort,$dir,0,$fnum,$filter,$start,$zeil);
+ tab_column(4,"Haus",$sort,$dir,4,$fnum,$filter,$start,$zeil);
+ tab_column(5,"Raum-Typ",$sort,$dir,5,$fnum,$filter,$start,$zeil);
+ tab_column(8,"Reinigungs-Typ",$sort,$dir,8,$fnum,$filter,$start,$zeil);
+ tab_column(9,"Reinig.-Kat.",$sort,$dir,9,$fnum,$filter,$start,$zeil);
+ tab_column(10,"Reinig.-Turn.",$sort,$dir,10,$fnum,$filter,$start,$zeil);
+ tab_column(11,"Boden-Typ",$sort,$dir,11,$fnum,$filter,$start,$zeil);
+ tab_column(12,"Reinig.Fl.(m<sup>2</sup>)",$sort,$dir,0,$fnum,$filter,$start,$zeil);
+ tab_column(6,"Fläche(m<sup>2</sup>)",$sort,$dir,0,$fnum,$filter,$start,$zeil);
+ tab_column(7,"Raumplan",$sort,$dir,0,$fnum,$filter,$start,$zeil);
+ echo "<th> </th></tr>\n";
+
+// echo "<tr bgcolor='#68ACBF'><th>Raum-Nr.</th><th>Bezeichnung</th><th>Haus</th><th>Typ</th><th>Fläche (m<sup>2</sup>)</th><th>Raumplan</th><th> </th>
+// </tr>\n";
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ if ($rid == $row->raum_ID) $bg = "#D6E6E6";
+ echo "<tr bgcolor='" . $bg . "'><td class='left'><b>$row->raum_nr</b></td>";
+ echo "<td>$row->raum_name</td>";
+ echo "<td>$row->geb_ID</td>";
+ echo "<td>$row->raumtyp_bez</td>";
+ if ($rid == $row->raum_ID)
+ { //Aenderungsform
+ $okn = true;
+ if (!$raum['reityp']) $raum['reityp'] = $row->reinigung_typ_ID;
+ if (!$raum['reikat']) $raum['reikat'] = $row->reinigung_kat;
+ if (!$raum['reitur']) $raum['reitur'] = $row->reinigung_turnus_ID;
+ if (!$raum['boden']) $raum['boden'] = $row->boden_typ_ID;
+ echo "<form action='". $_SERVER['PHP_SELF'] ."' method='post' enctype='application/x-www-form-urlencoded' name='frr'>\n";
+ echo "<td class='red'><select name='raum[reityp]' id='rrtyp'>";
+ if (is_null($raum['reityp'])) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT reinigung_typ_ID, reinigung_typ_bez FROM fhiiqm.Reinigung_Typ ORDER BY 1";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $ro)
+ {
+ if ($ro->reinigung_typ_ID == $raum['reityp'])
+ echo "<option selected value=\"$ro->reinigung_typ_ID\">$ro->reinigung_typ_ID: $ro->reinigung_typ_bez</option>\n";
+ else
+ echo "<option value=\"$ro->reinigung_typ_ID\">$ro->reinigung_typ_ID: $ro->reinigung_typ_bez</option>\n";
+ }
+ }
+ echo "</select><br />";
+ echo "<input type=\"hidden\" name=\"raum[okn]\" value=\"$okn\"/>\n";
+ echo "<input type=\"hidden\" name=\"i\" value=\"$rid\"/>\n"; // nur gewaehlte Raum-ID
+ echo "<input type='hidden' name='s' value='$sort'>\n";
+ echo "<input type='hidden' name='d' value='$dir'>\n";
+ echo "<input type='hidden' name='f' value='$fnum'>\n";
+ echo "<input type='hidden' name='filter' value='$filter'>\n";
+ echo "<input type='hidden' name='st' value='$start'>\n";
+ echo "<input type='hidden' name='z' value='$zeil'>\n";
+ echo "<input type='hidden' name='subf' value='finden'>\n";
+ if ($sub)
+ {
+ $frage = "Alle Angaben ok?";
+ echo "$frage<input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo "/> ";
+ }
+ echo "<input class=\"button\" type=\"submit\" name=\"eintragen\" id=\"sub\" value=\"eintragen\" /></td>";
+ }
+ else
+ {
+ if ($row->reinigung_typ_ID)
+ echo "<td>$row->reinigung_typ_ID: $row->reinigung_typ_bez</td>";
+ else echo "<td> </td>";
+ }
+ if ($rid == $row->raum_ID)
+ { //Aenderungsform
+ echo "<td><select name='raum[reikat]'>";
+ if (is_null($raum['reikat'])) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SHOW COLUMNS FROM Raum WHERE Field = 'reinigung_kat'";
+ if ($result = $dbc->queryRow($sql))
+ {
+ foreach ($result as $ro)
+ $arr=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/","\\2",$ro[1]));
+ foreach ($arr as $kat)
+ {
+ if ($kat == $raum["reikat"])
+ echo "<option selected value=\"$kat\">$kat</option>\n";
+ else
+ echo "<option value=\"$kat\">$kat</option>\n";
+ }
+ }
+ echo "</select></td>";
+ }
+ else
+ {
+ if ($row->reinigung_kat)
+ echo "<td>$row->reinigung_kat</td>";
+ else echo "<td> </td>";
+ }
+ if ($rid == $row->raum_ID)
+ {
+ echo "<td><select name='raum[reitur]'>";
+ if (is_null($raum['reitur'] == -1)) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT reinigung_turnus_ID, reinigung_turnus_bez FROM fhiiqm.Reinigung_Turnus ORDER BY 1";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $ro)
+ {
+ if ($ro->reinigung_turnus_ID == $raum['reitur'])
+ echo "<option selected value=\"$ro->reinigung_turnus_ID\">$ro->reinigung_turnus_bez</option>\n";
+ else
+ echo "<option value=\"$ro->reinigung_turnus_ID\">$ro->reinigung_turnus_bez</option>\n";
+ }
+ }
+ echo "</select></td>";
+ }
+ else
+ {
+ if ($row->reinigung_turnus_bez)
+ echo "<td>$row->reinigung_turnus_bez</td>";
+ else echo "<td> </td>";
+ }
+ if ($rid == $row->raum_ID)
+ {
+ echo "<td><select name='raum[boden]'>";
+ if (is_null($raum['boden'])) $select = " selected "; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT boden_typ_ID, boden_typ_bez FROM fhiiqm.Boden_Typ ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $ro)
+ {
+ if ($ro->boden_typ_ID == $raum['boden'])
+ echo "<option selected value=\"$ro->boden_typ_ID\">$ro->boden_typ_bez</option>\n";
+ else
+ echo "<option value=\"$ro->boden_typ_ID\">$ro->boden_typ_bez</option>\n";
+ }
+ }
+ echo "</select></td>";
+
+ echo "</form>\n";
+ }
+ else
+ {
+ if ($row->boden_typ_bez)
+ echo "<td>$row->boden_typ_bez</td>";
+ else echo "<td> </td>";
+ }
+ if ($row->reinigung_flaeche)
+ echo "<td class='right'>" . number_format($row->reinigung_flaeche,2,',','') . "</td>";
+ else echo "<td> </td>";
+ echo "<td class='right'>" . str_replace(".",",",$row->raum_flaeche) . "</td>";
+ if (file_exists("raeume/".$row->raum_file))
+ {
+ $raum_file = substr($row->raum_file,strpos($row->raum_file,"_")+1);
+ echo "<td><a href=\"raeume/$row->raum_file\">$raum_file</td>";
+ }
+ else
+ echo "<td>$row->raum_file</td>";
+ if ($rid == $row->raum_ID)
+ echo "<td> </td></tr>\n";
+ else
+ echo "<td><a href='".$_SERVER["PHP_SELF"]."?i=$row->raum_ID&s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil'>
+ <img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td></tr>\n";
+ }
+ echo "</table></div>\n";
+
+ echo "<br /> ";
+
+ // Sortierung und Filter aus $_GET fuer weitere Seiten
+ foreach ($_GET as $key=>$val)
+ {
+ if ($key != "st") $liste .= "&" . $key ."=".$val;
+ }
+ // Sortierung und Filter aus $_POST fuer weitere Seiten
+ if ($subf)
+ foreach ($_POST as $key=>$val)
+ {
+ if ($key != "st" && $key != "subf" && $key != "filter") $liste .= "&" . $key ."=".$val;
+ if ($key == "filter") $liste .= "&b=" . $val;
+ }
+
+ // Links auf andere Seiten generieren
+ liste_links($start,$zeil,$ranz,$liste);
+
+ }
+ else
+ {
+ if ($dbc -> error)
+ echo "error: " . $dbc -> error . "<br />\n";
+ else
+ {
+ echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
+ echo " <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Raumliste\">Raumliste</a></p>\n";
+ }
+
+ }
+ $dbc -> close();
+
+// echo "<br />rid = $rid, row[raum_ID] = $row->raum_ID<br />";
+
+ if (!is_null($_SESSION["recht"]) && in_array("re",$_SESSION["recht"]))
+ echo "<p> <a href=\"raum_ins.php\" target=\"_self\" title=\"Raum erfassen\" class=\"sc\">Weiteren Raum erfassen</a></p>\n";
+
+?>
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/raum_vma_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/raum_vma_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,366 +1,378 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 10/2012
- *
- * UPDATE(/DELETE) Raum-Verantwortliche
-*/
-
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ddr",$_SESSION["recht"]) && !in_array("dde",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
-
- <title>Aktualisieren Raum-Verantwortliche</title>
-</head>
-
-<body>
- <script type="text/javascript">
- <!--
- var counter = 0;
- var limit = 99;
- var arr = new Array();
- function addInput(divName){
- if (counter == limit) {
- alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
- }
- else {
- var newdiv = document.createElement('div');
- var count;
- var opt="<option value='-1'></option>";
- for (var key in arr)
- {
- opt = opt.concat("<option value='",key,"'>",arr[key],"</option>\n" );
- }
- opt += "</select>\n";
- newdiv.innerHTML += "<select name='raum[ma][]'>"+opt;
- document.getElementById(divName).appendChild(newdiv);
- counter++;
- }
- }
- function delInput(divId){
- var kn = document.getElementById(divId);
- while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SELECT" && kn.lastChild.nodeName != "A")
- {
-// alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
- var knc = kn.lastChild;
- document.getElementById(divId).removeChild(knc);
- }
- if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
- }
- //-->
- </script>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/house.png\" border=\"0\" alt=\"Raumdaten bearbeiten\" title=\"Raumdaten bearbeiten\"/></div>\n";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- $dbc = new dbconnection();
-
- $rid = $_GET["i"];
- if (!$rid) $rid=1;
- $zeil = $_GET["z"];
- $start = $_GET["st"];
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $geb = $_GET["b"]; // Filterbegriff
- $sort = $_GET["s"];
-
- $ok = $_POST["ok"];
- $sub = $_POST["sub"];
- $raum = $_POST["raum"];
-
-// print_r($raum);
-// echo "<br><br>\n";
-
- echo "<div align=\"center\"><h3>Raum - Verantwortliche editieren</h3></div>\n";
-
- $liste="?st=$start&z=$zeil&s=$sort&f=$fnum&b=$geb"; //Link fuer Raumliste
-
- if (!$sub || !isset($raum) || !$ok )
- {
- if (!$sub && !isset($raum))
- {
- $sql = "SELECT persknr FROM Raum_MA WHERE raum_ID = $rid";
- if ($res = $dbc ->queryObjectArray($sql))
- {
- foreach ($res as $row)
- $raum["ma"][] = $row->persknr;
- }
- $sql = "SELECT raum_bem FROM fhiiqm.Raum WHERE raum_ID = $rid";
- $raum["bem"] = $dbc -> querySingleItem($sql);
- }
- $sql = "SELECT raum_ID,raum_nr,raum_name,geb_ID,raumtyp_ID,raum_flaeche,raum_file
- FROM fhiiqm.Raum WHERE raum_ID = $rid";
- if ($result = $dbc ->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $raum['rnum'] = $row->raum_nr;
- $raum['rbez'] = $row->raum_name;
- $raum['geb'] = $row->geb_ID;
- $raum['rtyp'] = $row->raumtyp_ID;
- $raum['rflae'] = str_replace(".",",",$row->raum_flaeche);
- $raum['rfname'] = $row->raum_file;
- }
- $sql = "SELECT arbplatz_typ FROM Raum_Arbplatz_Typ WHERE raum_ID = $rid";
- if ($res = $dbc ->queryObjectArray($sql))
- {
- foreach ($res as $row)
- $raum["aptyp"][] = $row->arbplatz_typ;
- }
- }
-
-?>
- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_info" target="_self">
- <div align="center">
- <table width="30%" border="0" cellspacing="3" cellpadding="3">
- <tr>
- <td>Haus</td>
- <td bgcolor="#D6E6E6"><?php echo $raum['geb']; ?>
- </td>
- </tr>
- <tr>
- <td>Raum-Nummer</td>
- <td bgcolor="#D6E6E6"><?php echo $raum['rnum']; ?>
- </td>
- </tr>
- <tr>
- <td>Raum-Bezeichnung</td>
- <td bgcolor="#D6E6E6"><?php echo $raum['rbez']; ?>
- </td>
- </tr>
- <tr>
- <td>Raum-Typ</td>
- <td bgcolor="#D6E6E6"><?php echo $raum['rtyp']; ?>
- </td>
- </tr>
- <?php
- echo "<tr><td>Arbeitsplatztyp(en)</td>";
- echo "<td bgcolor='#D6E6E6'>";
- foreach ($raum['aptyp'] as $apt)
- $lapt .= $apt.", ";
- $lapt = substr($lapt,0,strlen($lapt)-2);
- echo "$lapt</td></tr>\n";
- ?>
- <tr>
- <td>Raum-Fläche (m<sup>2</sup>)</td>
- <td bgcolor="#D6E6E6"><?php echo $raum['rflae']; ?>
- </tr>
- <tr>
- <td>Raumplan</td>
- <td bgcolor="#D6E6E6"><?php if ($raum['rfname']>='!' && file_exists("raeume/".$raum['rfname']))
- echo "<a href='raeume/" . $raum['rfname'] ."'>" . substr($raum['rfname'],strpos($raum['rfname'],"_")+1) . "</a>";
- ?>
- </td>
- </tr>
- <tr>
- <td>Verantwortliche *
- <br /> leeres Feld = Löschen
- </td>
- <td bgcolor="#D6E6E6">
- <div id="add">
- <select name="raum[ma][]" size="1">
- <?php
- $select = null;
- $select = ( "-1"==$ap['gf'][0] ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- $sql = "SELECT persknr, CONCAT (nachname, ', ',IFNULL(vorname,''), ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as ma
- FROM fhiiqm.Mitarbeiter m LEFT OUTER JOIN fhiiqm.Abteilung a ON m.abt_tel=a.abt_ID
- WHERE aktiv < 2
- ORDER BY 2";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $select = ( $row->persknr===$raum['ma'][0] ) ? ' selected' : null;
- echo "<option $select value=\"$row->persknr\">$row->ma</option>\n";
- $sgf .= "'".$row->persknr."':'".$row->ma."',";
- }
- }
- $sgf = substr($sgf,0,strlen($sgf)-1);
- ?>
- </select>
- <script type="text/javascript">
- <!--
- arr = {<?php echo ($sgf); ?>}; // Ergebnis: {'key':'value','key':'value',...}
- //-->
- </script>
-
- <a href="<?php echo "javascript:addInput('add');" ?>" title="weiterer Verantwortlicher"><img src="/fhiiqm/img/add.png" /></a>
- <a href="<?php echo "javascript:delInput('add');" ?>" title="löschen letzten Verantwortlichen"><img src="/fhiiqm/img/delete.png" /></a><br />
- <?php
- if ($rid || ($sub && isset($raum) && !$ok))
- {
- if (count($raum['ma'])>1)
- {
- $i=0;
- foreach ($raum['ma'] as $mae)
- {
- if ($i>0)
- {
- echo "<select name=\"raum[ma][]\" size=\"1\">";
-
- $select = ( "-1" == $mae ) ? ' selected' : null;
- echo "<option $select value=\"-1\"></option>\n";
- foreach ($result as $row)
- {
- $select = ( $row->persknr === $mae ) ? ' selected' : null;
- echo "<option $select value=\"$row->persknr\">$row->ma</option>\n";
- }
- echo "</select><br/>\n";
- }
- $i++;
- }
- }
- }
- ?>
- </div>
- </td>
- </tr>
- <tr>
- <td>Bemerkung</td>
- <td bgcolor="#D6E6E6"><textarea name="raum[bem]" cols="80" rows="10"><?php echo $raum['bem']; ?></textarea>
- <div>max. 800 Zeichen sind möglich</div></td>
- </tr>
-
-<?php
- if ($sub)
- {
- $frage = "Alle Angaben ok?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked";
- echo " /></td>\n</tr>\n";
- }
-
- if (!is_null($_SESSION["recht"]) && in_array("dde", $_SESSION["recht"]))
- {
- echo "<tr>\n";
- echo "
- <td> </td>
- <td><input class=\"button\" type=\"submit\" value=\"ändern\" name=\"sub\" title=\"update\" /></td>\n";
- echo "</tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
- echo "<p class='sc'> <a href=\"raum_vma_flist.php$liste\" target=\"_self\" title=\"Raumliste\">« zur Raumliste</a></p>\n";
- echo "</form>\n";
-
- }
- elseif ($ok && $sub)
- {
- echo "<div align='center'>\n";
- //daten speichern
-
- //UPDATE Raum
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- $raum['bem'] = substr($raum['bem'],0,800);
- if (!isset($raum['bem']) || $raum['bem']<'!') $raum['bem'] = null;
- $stmt -> prepare("UPDATE fhiiqm.Raum SET
- raum_bem = ?
- WHERE raum_ID = $rid");
-
- $stmt -> bind_param('s',$raum['bem']);
- $retr = $stmt -> execute();
- $retd = 1;
- if ($rid && is_array($raum['ma']))
- { //UPDATE
- // Loeschen alte Raumverantwortliche
- $retd = $dbc -> execute("DELETE FROM Raum_MA WHERE raum_ID = ". $rid);
- }
-
- if ($retd && is_array($raum['ma']))
- {
- $retv = 1;
- $stmt -> prepare("INSERT INTO Raum_MA (raum_ID,persknr) VALUES(?,?)");
- for ($k=0; $k<count($raum["ma"]); $k++)
- {
- if ($raum["ma"][$k] && $raum["ma"][$k] != -1)
- {
- $stmt -> bind_param('ii',$rid,$raum["ma"][$k]);
- $retv = $stmt -> execute();
- if (!$retv) $retv = false;
- }
- }
- if (!$retv) echo "error INSERT Raumverantwortliche: $stmt->error<br />\n";
-
- }
- }
-// echo "UPDATE-sql = $sql<br />\n";
- if ($retv && $retr)
- {//Eingabe Daten erfolgreich
- echo "<p class='green'><b>Raumverantwortliche zu ID '$rid' wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br />\n";
-
- // Anzeigen gespeicherter Verantwortlichen
- echo "<table>";
- $sql = "SELECT r.raum_ID,geb_ID, raum_nr, raum_name, raum_bem,
- CONCAT (nachname, ', ',vorname, ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as ma
- FROM Raum r LEFT OUTER JOIN Raum_MA rm ON r.raum_ID=rm.raum_ID
- LEFT OUTER JOIN fhiiqm.Mitarbeiter m ON rm.persknr=m.persknr
- LEFT OUTER JOIN fhiiqm.Abteilung a ON m.abt_tel=a.abt_ID
- WHERE r.raum_ID = $rid
- ORDER BY 5";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- if (!$first && $row->raum_ID != $vrid)
- {
- echo "<tr><td>Haus: </td><td>$row->geb_ID</td></tr>\n";
- echo "<tr><td>Raum: </td><td>$row->raum_nr, $row->raum_name</td></tr>\n";
- echo "<tr><td>Bemerkung: </td><td>$row->raum_bem</td></tr>\n";
- echo "<tr><td>Verantwortliche(r): </td><td>$row->ma";
- $first=1;
- }
- elseif ($row->raum_ID == $vrid && $row->ma >"")
- echo "<br />$row->ma";
- $vrid = $row->raum_ID;
- }
- }
- echo "</td></tr></table>\n";
- }
- }
-
- if ($ok && ($sub))
- {
- // Raumliste filtern mit zuletzt eingegeben Haus
- echo "</div><br /><br />\n";
- echo "<p class='sc'> <a href=\"raum_vma_flist.php$liste\" target=\"_self\" title=\"Raumliste\">Zurück zur Raumliste</a></p>\n";
- }
-
-?>
-
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 10/2012
+ *
+ * UPDATE(/DELETE) Raum-Verantwortliche
+*/
+
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ddr",$_SESSION["recht"]) && !in_array("dde",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+
+ <title>Aktualisieren Raum-Verantwortliche</title>
+</head>
+
+<body>
+ <script type="text/javascript">
+ <!--
+ var counter = 0;
+ var limit = 99;
+ var arr = new Array();
+ function addInput(divName){
+ if (counter == limit) {
+ alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
+ }
+ else {
+ var newdiv = document.createElement('div');
+ var count;
+ var opt="<option value='-1'></option>";
+ for (var key in arr)
+ {
+ opt = opt.concat("<option value='",key,"'>",arr[key],"</option>\n" );
+ }
+ opt += "</select>\n";
+ newdiv.innerHTML += "<select name='raum[ma][]'>"+opt;
+ document.getElementById(divName).appendChild(newdiv);
+ counter++;
+ }
+ }
+ function delInput(divId){
+ var kn = document.getElementById(divId);
+ while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SELECT" && kn.lastChild.nodeName != "A")
+ {
+// alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
+ var knc = kn.lastChild;
+ document.getElementById(divId).removeChild(knc);
+ }
+ if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
+ }
+ //-->
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/house.png\" border=\"0\" alt=\"Raumdaten bearbeiten\" title=\"Raumdaten bearbeiten\"/></div>\n";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ $dbc = new dbconnection();
+
+ $rid = $_GET["i"];
+ if (!$rid) $rid=1;
+ $zeil = $_GET["z"];
+ $start = $_GET["st"];
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $geb = $_GET["b"]; // Filterbegriff
+ $sort = $_GET["s"];
+
+ $ok = $_POST["ok"];
+ $sub = $_POST["sub"];
+ $raum = $_POST["raum"];
+
+// print_r($raum);
+// echo "<br><br>\n";
+
+ echo "<div align=\"center\"><h3>Raum - Verantwortliche editieren</h3></div>\n";
+
+ $liste="?st=$start&z=$zeil&s=$sort&f=$fnum&b=$geb"; //Link fuer Raumliste
+
+ if (!$sub || !isset($raum) || !$ok )
+ {
+ if (!$sub && !isset($raum))
+ {
+ $sql = "SELECT persknr,timestamp,userid FROM Raum_MA WHERE raum_ID = $rid";
+ if ($res = $dbc ->queryObjectArray($sql))
+ {
+ foreach ($res as $row)
+ $raum["ma"][] = $row->persknr;
+ $raum["tstmp"] = $row->timestamp;
+ $raum["uid"] = $row->userid;
+ }
+ $sql = "SELECT raum_bem FROM fhiiqm.Raum WHERE raum_ID = $rid";
+ $raum["bem"] = $dbc -> querySingleItem($sql);
+ }
+ $sql = "SELECT raum_ID,raum_nr,raum_name,geb_ID,raumtyp_ID,raum_flaeche,raum_file
+ FROM fhiiqm.Raum WHERE raum_ID = $rid";
+ if ($result = $dbc ->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $raum['rnum'] = $row->raum_nr;
+ $raum['rbez'] = $row->raum_name;
+ $raum['geb'] = $row->geb_ID;
+ $raum['rtyp'] = $row->raumtyp_ID;
+ $raum['rflae'] = str_replace(".",",",$row->raum_flaeche);
+ $raum['rfname'] = $row->raum_file;
+ }
+ $sql = "SELECT arbplatz_typ FROM Raum_Arbplatz_Typ WHERE raum_ID = $rid";
+ if ($res = $dbc ->queryObjectArray($sql))
+ {
+ foreach ($res as $row)
+ $raum["aptyp"][] = $row->arbplatz_typ;
+ }
+ }
+
+?>
+ <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_info" target="_self">
+ <div align="center">
+ <table width="30%" border="0" cellspacing="3" cellpadding="3">
+ <tr>
+ <td>Haus</td>
+ <td bgcolor="#D6E6E6"><?php echo $raum['geb']; ?>
+ </td>
+ </tr>
+ <tr>
+ <td>Raum-Nummer</td>
+ <td bgcolor="#D6E6E6"><?php echo $raum['rnum']; ?>
+ </td>
+ </tr>
+ <tr>
+ <td>Raum-Bezeichnung</td>
+ <td bgcolor="#D6E6E6"><?php echo $raum['rbez']; ?>
+ </td>
+ </tr>
+ <tr>
+ <td>Raum-Typ</td>
+ <td bgcolor="#D6E6E6"><?php echo $raum['rtyp']; ?>
+ </td>
+ </tr>
+ <?php
+ echo "<tr><td>Arbeitsplatztyp(en)</td>";
+ echo "<td bgcolor='#D6E6E6'>";
+ foreach ($raum['aptyp'] as $apt)
+ $lapt .= $apt.", ";
+ $lapt = substr($lapt,0,strlen($lapt)-2);
+ echo "$lapt</td></tr>\n";
+ ?>
+ <tr>
+ <td>Raum-Fläche (m<sup>2</sup>)</td>
+ <td bgcolor="#D6E6E6"><?php echo $raum['rflae']; ?>
+ </tr>
+ <tr>
+ <td>Raumplan</td>
+ <td bgcolor="#D6E6E6"><?php if ($raum['rfname']>='!' && file_exists("raeume/".$raum['rfname']))
+ echo "<a href='raeume/" . $raum['rfname'] ."'>" . substr($raum['rfname'],strpos($raum['rfname'],"_")+1) . "</a>";
+ ?>
+ </td>
+ </tr>
+ <tr>
+ <td>Verantwortliche *
+ <br /> leeres Feld = Löschen
+ </td>
+ <td bgcolor="#D6E6E6">
+ <div id="add">
+ <select name="raum[ma][]" size="1">
+ <?php
+ $select = null;
+ $select = ( "-1"==$ap['gf'][0] ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ $sql = "SELECT persknr, CONCAT (nachname, ', ',IFNULL(vorname,''), ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as ma
+ FROM fhiiqm.Mitarbeiter m LEFT OUTER JOIN fhiiqm.Abteilung a ON m.abt_tel=a.abt_ID
+ WHERE aktiv < 2
+ ORDER BY 2";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $select = ( $row->persknr===$raum['ma'][0] ) ? ' selected' : null;
+ echo "<option $select value=\"$row->persknr\">$row->ma</option>\n";
+ $sgf .= "'".$row->persknr."':'".$row->ma."',";
+ }
+ }
+ $sgf = substr($sgf,0,strlen($sgf)-1);
+ ?>
+ </select>
+ <script type="text/javascript">
+ <!--
+ arr = {<?php echo ($sgf); ?>}; // Ergebnis: {'key':'value','key':'value',...}
+ //-->
+ </script>
+
+ <a href="<?php echo "javascript:addInput('add');" ?>" title="weiterer Verantwortlicher"><img src="/fhiiqm/img/add.png" /></a>
+ <a href="<?php echo "javascript:delInput('add');" ?>" title="löschen letzten Verantwortlichen"><img src="/fhiiqm/img/delete.png" /></a><br />
+ <?php
+ if ($rid || ($sub && isset($raum) && !$ok))
+ {
+ if (count($raum['ma'])>1)
+ {
+ $i=0;
+ foreach ($raum['ma'] as $mae)
+ {
+ if ($i>0)
+ {
+ echo "<select name=\"raum[ma][]\" size=\"1\">";
+
+ $select = ( "-1" == $mae ) ? ' selected' : null;
+ echo "<option $select value=\"-1\"></option>\n";
+ foreach ($result as $row)
+ {
+ $select = ( $row->persknr === $mae ) ? ' selected' : null;
+ echo "<option $select value=\"$row->persknr\">$row->ma</option>\n";
+ }
+ echo "</select><br/>\n";
+ }
+ $i++;
+ }
+ }
+ }
+ ?>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>Bemerkung</td>
+ <td bgcolor="#D6E6E6"><textarea name="raum[bem]" cols="80" rows="10"><?php echo $raum['bem']; ?></textarea>
+ <div>max. 800 Zeichen sind möglich</div></td>
+ </tr>
+<?php
+ if ($raum["tstmp"] && $raum["tstmp"]>0)
+ {
+ echo "<tr><td>letzte Änderung</td>";
+ $ts = new DateTime($raum["tstmp"]);
+ echo "<td>".$ts->format('d.m.Y H:i:s');
+ }
+ if (isset($raum["uid"]) && $raum["uid"])
+ echo " (".$raum["uid"] .")";
+ echo "</td></tr>\n";
+
+
+ if ($sub)
+ {
+ $frage = "Alle Angaben ok?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked";
+ echo " /></td>\n</tr>\n";
+ }
+
+ if (!is_null($_SESSION["recht"]) && in_array("dde", $_SESSION["recht"]))
+ {
+ echo "<tr>\n";
+ echo "
+ <td> </td>
+ <td><input class=\"button\" type=\"submit\" value=\"ändern\" name=\"sub\" title=\"update\" /></td>\n";
+ echo "</tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+ echo "<p class='sc'> <a href=\"raum_vma_flist.php$liste\" target=\"_self\" title=\"Raumliste\">« zur Raumliste</a></p>\n";
+ echo "</form>\n";
+
+ }
+ elseif ($ok && $sub)
+ {
+ echo "<div align='center'>\n";
+ //daten speichern
+ $userid = $_SESSION["userid"];
+ //UPDATE Raum
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $raum['bem'] = substr($raum['bem'],0,800);
+ if (!isset($raum['bem']) || $raum['bem']<'!') $raum['bem'] = null;
+ $stmt -> prepare("UPDATE fhiiqm.Raum SET
+ raum_bem = ?
+ WHERE raum_ID = $rid");
+
+ $stmt -> bind_param('s',$raum['bem']);
+ $retr = $stmt -> execute();
+ $retd = 1;
+ if ($rid && is_array($raum['ma']))
+ { //UPDATE
+ // Loeschen alte Raumverantwortliche
+ $retd = $dbc -> execute("DELETE FROM Raum_MA WHERE raum_ID = ". $rid);
+ }
+
+ if ($retd && is_array($raum['ma']))
+ {
+ $retv = 1;
+ $stmt -> prepare("INSERT INTO Raum_MA (raum_ID,persknr,userid) VALUES(?,?,?)");
+ for ($k=0; $k<count($raum["ma"]); $k++)
+ {
+ if ($raum["ma"][$k] && $raum["ma"][$k] != -1)
+ {
+ $stmt -> bind_param('iis',$rid,$raum["ma"][$k],$userid);
+ $retv = $stmt -> execute();
+ if (!$retv) $retv = false;
+ }
+ }
+ if (!$retv) echo "error INSERT Raumverantwortliche: $stmt->error<br />\n";
+
+ }
+ }
+// echo "UPDATE-sql = $sql<br />\n";
+ if ($retv && $retr)
+ {//Eingabe Daten erfolgreich
+ echo "<p class='green'><b>Raumverantwortliche zu ID '$rid' wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br />\n";
+
+ // Anzeigen gespeicherter Verantwortlichen
+ echo "<table>";
+ $sql = "SELECT r.raum_ID,geb_ID, raum_nr, raum_name, raum_bem,
+ CONCAT (nachname, ', ',vorname, ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 1 THEN 'aktiv' ELSE 'inaktiv' END, ')') as ma
+ FROM Raum r LEFT OUTER JOIN Raum_MA rm ON r.raum_ID=rm.raum_ID
+ LEFT OUTER JOIN fhiiqm.Mitarbeiter m ON rm.persknr=m.persknr
+ LEFT OUTER JOIN fhiiqm.Abteilung a ON m.abt_tel=a.abt_ID
+ WHERE r.raum_ID = $rid
+ ORDER BY 5";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ if (!$first && $row->raum_ID != $vrid)
+ {
+ echo "<tr><td>Haus: </td><td>$row->geb_ID</td></tr>\n";
+ echo "<tr><td>Raum: </td><td>$row->raum_nr, $row->raum_name</td></tr>\n";
+ echo "<tr><td>Bemerkung: </td><td>$row->raum_bem</td></tr>\n";
+ echo "<tr><td>Verantwortliche(r): </td><td>$row->ma";
+ $first=1;
+ }
+ elseif ($row->raum_ID == $vrid && $row->ma >"")
+ echo "<br />$row->ma";
+ $vrid = $row->raum_ID;
+ }
+ }
+ echo "</td></tr></table>\n";
+ }
+ }
+
+ if ($ok && ($sub))
+ {
+ // Raumliste filtern mit zuletzt eingegeben Haus
+ echo "</div><br /><br />\n";
+ echo "<p class='sc'> <a href=\"raum_vma_flist.php$liste\" target=\"_self\" title=\"Raumliste\">Zurück zur Raumliste</a></p>\n";
+ }
+
+?>
+
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/recht_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/recht_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,245 +1,245 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 10/2011
- *
- * INSERT/UPDATE/DELETE Rechte
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rte",$_SESSION["recht"]) && !in_array("rtr",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
- <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
-<!--
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
--->
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
- <title>Nutzer & Rechte</title>
-</head>
-
-<body>
-
- <script>
- $(document).ready(function() {
- $("#persknr").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
- $("input").filter("long20").addClass("long20");
- });
- </script>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/user_go.png\" border=\"0\" alt=\"User, Rechte eingeben\" title=\"User, Rechte eingeben\"/></div>\n";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $pget = $_GET["pid"];
- $ok = $_POST["ok"];
- $ins = $_POST["ins"];
- $del = $_POST["del"];
- $rt = $_POST["rt"];
- if (!$rt['okn']) $ok=false;
-// print_r($rt); echo "$ins, $del<br />";
- if (!$ok || (!$ins && !$del))
- {
- if ($pget && !$ins && !$del)
- {
- // Daten zu Mitarbeiter bereitstellen
- $rt["pid"] = $pget;
- $sql = "SELECT userid FROM fhiiqm.userweb WHERE persknr = $pget";
- if ($userid = $dbc->querySingleItem($sql))
- {
- $rt["userid"] = $userid;
- $sql = "SELECT CONCAT (nachname, ', ',vorname) AS ma FROM fhiiqm.Mitarbeiter WHERE persknr = $pget";
- if ($result = $dbc -> queryObjectArray($sql))
- foreach ($result as $row)
- $rt["pers"] = $row->ma;
- $sql = "SELECT recht_ID FROM fhiiqm.user_recht WHERE userid = '$userid'";
- if ($resr = $dbc -> queryObjectArray($sql))
- foreach ($resr as $row)
- $rt["recht"][] = $row->recht_ID;
- $sql = "SELECT prod_group_ID FROM fhiiqm.user_prodgroup WHERE userid = '$userid'";
- if ($resg = $dbc -> queryObjectArray($sql))
- foreach ($resg as $row)
- $rt["prodg"][] = $row->prod_group_ID;
- }
- }
-
- include_once("form/recht_form.inc.php");
-
- if ($ins || $del)
- {
-
- if ($ins) $frage = "Alle Angaben ok?"; else $frage = "Nutzer und seine Rechte wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked";
- echo "></td>\n</tr>\n";
- }
-
- if (!is_null($_SESSION["recht"]) && in_array("rte", $_SESSION["recht"]))
- {
- if ($pget || $rt["pget"]) $sub = "ändern"; else $sub = "eingeben";
-
- echo "<tr>\n";
- echo "
- <td> </td>
- <td><input class=\"button\" type=\"submit\" value=\"$sub\" name=\"ins\" title=\"$sub\" />";
- if ($pget || $rt["pget"])
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo "</td>\n";;
- echo "</tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("rte", $_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"recht_list.php\" target=\"_self\" title=\"Nutzerliste\">« zur Nutzerliste</a></p>\n";
- echo "</form>\n";
-
- }
- elseif ($ok && ($ins || $del))
- {
- echo "<div align='center'>\n";
- //daten speichern
-
- if ($ins == "eingeben")
- {
- $resu=1;
- // pruefen, ob userid schon existiert
- $sql = "SELECT persknr, userid FROM fhiiqm.userweb WHERE userid = '" . $rt["userid"] . "'";
- if ($result = $dbc ->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- echo "<p class='red'>User-ID '<b>" . $rt["userid"] ."</b>' ist schon vorhanden!</p>";
- $erruid = 1;
- }
- }
- }
- else
- { //update
- $sql = "SELECT userid FROM fhiiqm.userweb WHERE persknr = $pget";
- if ($userid = $dbc->querySingleItem($sql))
- {
- $resu=1; $resr=1; $resp=1;
- if ($userid != $rt["userid"])
- {
- // alte userid und Rechte dazu loeschen -> CASCADE DELETE
- $resu = $dbc -> execute("DELETE FROM fhiiqm.userweb WHERE userid ='" . $userid . "'");
- }
- else
- {
- // alte Rechte loeschen
- $sql = "DELETE FROM fhiiqm.user_recht WHERE userid ='" . $userid . "'";
- $resr = $dbc -> execute($sql);
- $sql = "DELETE FROM fhiiqm.user_prodgroup WHERE userid ='" . $userid . "'";
- $resp = $dbc -> execute($sql);
- }
- }
- if (!$resu || !$resr || !$resp) $erruid = 1;
-
- }
- if ($del)
- {
- // User loeschen
- $sql = "DELETE FROM fhiiqm.userweb WHERE userid ='" . $rt["userid"] . "'";
- $res = $dbc -> execute($sql);
- if ($res)
- echo "<p class='green'><b>User-ID '".$rt["userid"]."' und zugeordete Rechte wurden gelöscht.</b></p>\n";
- else
- echo "<p class='red'><b>Löschen von User-ID '".$rt["userid"]."' und zugeordeter Rechte ist fehlgeschlagen.</b></p>\n";
- $erruid = 1; //
- }
- if (!$erruid)
- { // Rechte speichern
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- $result = 1;
- if ($ins == "eingeben" || $userid != $rt["userid"])
- {
- $stmt -> prepare("INSERT INTO fhiiqm.userweb (persknr, userid) VALUES (?,?)");
- $stmt -> bind_param('is',$rt["pid"],$rt["userid"]);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error userweb: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
- $stmt -> reset();
- }
- if ($result)
- {
- $resr = 1;
- if (is_array($rt["recht"]) && !is_null($rt["recht"]))
- {
- $stmt -> prepare("INSERT INTO fhiiqm.user_recht (userid,recht_ID) VALUES (?,?)");
- foreach ($rt["recht"] as $re)
- {
- $stmt -> bind_param('ss',$rt["userid"],$re);
- $resr = $stmt -> execute();
- }
- if ($stmt->error) echo "error user_recht: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
- $stmt -> reset();
- }
- $resp = 1;
- if (is_array($rt["prodg"]) && !is_null($rt["prodg"]))
- {
- $stmt -> prepare("INSERT INTO fhiiqm.user_prodgroup (userid,prod_group_ID) VALUES (?,?)");
- foreach ($rt["prodg"] as $re)
- {
- $stmt -> bind_param('ss',$rt["userid"],$re);
- $resp = $stmt -> execute();
- }
- }
- if ($stmt->error) echo "error user_prodgroup: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
-
- }
-// $stmt -> close();
- }
- if ($result && $resu && $resr && $resp)
- echo "<p class='green'><b>User-ID '".$rt["userid"]."' und zugeordete Rechte wurden erfolgreich gespeichert.</b></p>\n";
- else
- {
- echo "<p class='red'><b>Speichern von User-ID '".$rt["userid"]."' und zugeordeter Rechte war nicht erfolgreich.</b></p>\n";
- echo "result = $result, resu=$res, resr=$resr, resp=$resp<br />";
- }
- }
- $dbc -> close();
- echo "</div>\n";
- echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Rechte erfassen\">Weiteren Nutzer & Rechte erfassen</a></p>\n";
- echo "<p class='sc'> <a href='/fhiiqm/recht_list.php' title='Nutzerliste'>zur Nutzerliste</a></p>";
- }
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 10/2011
+ *
+ * INSERT/UPDATE/DELETE Rechte
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rte",$_SESSION["recht"]) && !in_array("rtr",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
+ <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
+<!--
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
+-->
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+ <title>Nutzer & Rechte</title>
+</head>
+
+<body>
+
+ <script>
+ $(document).ready(function() {
+ $("#persknr").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("input").filter("long20").addClass("long20");
+ });
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/user_go.png\" border=\"0\" alt=\"User, Rechte eingeben\" title=\"User, Rechte eingeben\"/></div>\n";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $pget = $_GET["pid"];
+ $ok = $_POST["ok"];
+ $ins = $_POST["ins"];
+ $del = $_POST["del"];
+ $rt = $_POST["rt"];
+ if (!$rt['okn']) $ok=false;
+// print_r($rt); echo "$ins, $del<br />";
+ if (!$ok || (!$ins && !$del))
+ {
+ if ($pget && !$ins && !$del)
+ {
+ // Daten zu Mitarbeiter bereitstellen
+ $rt["pid"] = $pget;
+ $sql = "SELECT userid FROM fhiiqm.userweb WHERE persknr = $pget";
+ if ($userid = $dbc->querySingleItem($sql))
+ {
+ $rt["userid"] = $userid;
+ $sql = "SELECT CONCAT (nachname, ', ',vorname) AS ma FROM fhiiqm.Mitarbeiter WHERE persknr = $pget";
+ if ($result = $dbc -> queryObjectArray($sql))
+ foreach ($result as $row)
+ $rt["pers"] = $row->ma;
+ $sql = "SELECT recht_ID FROM fhiiqm.user_recht WHERE userid = '$userid'";
+ if ($resr = $dbc -> queryObjectArray($sql))
+ foreach ($resr as $row)
+ $rt["recht"][] = $row->recht_ID;
+ $sql = "SELECT prod_group_ID FROM fhiiqm.user_prodgroup WHERE userid = '$userid'";
+ if ($resg = $dbc -> queryObjectArray($sql))
+ foreach ($resg as $row)
+ $rt["prodg"][] = $row->prod_group_ID;
+ }
+ }
+
+ include_once("form/recht_form.inc.php");
+
+ if ($ins || $del)
+ {
+
+ if ($ins) $frage = "Alle Angaben ok?"; else $frage = "Nutzer und seine Rechte wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked";
+ echo "></td>\n</tr>\n";
+ }
+
+ if (!is_null($_SESSION["recht"]) && in_array("rte", $_SESSION["recht"]))
+ {
+ if ($pget || $rt["pget"]) $sub = "ändern"; else $sub = "eingeben";
+
+ echo "<tr>\n";
+ echo "
+ <td> </td>
+ <td><input class=\"button\" type=\"submit\" value=\"$sub\" name=\"ins\" title=\"$sub\" />";
+ if ($pget || $rt["pget"])
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo "</td>\n";;
+ echo "</tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("rte", $_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"recht_list.php\" target=\"_self\" title=\"Nutzerliste\">« zur Nutzerliste</a></p>\n";
+ echo "</form>\n";
+
+ }
+ elseif ($ok && ($ins || $del))
+ {
+ echo "<div align='center'>\n";
+ //daten speichern
+
+ if ($ins == "eingeben")
+ {
+ $resu=1;
+ // pruefen, ob userid schon existiert
+ $sql = "SELECT persknr, userid FROM fhiiqm.userweb WHERE userid = '" . $rt["userid"] . "'";
+ if ($result = $dbc ->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ echo "<p class='red'>User-ID '<b>" . $rt["userid"] ."</b>' ist schon vorhanden!</p>";
+ $erruid = 1;
+ }
+ }
+ }
+ else
+ { //update
+ $sql = "SELECT userid FROM fhiiqm.userweb WHERE persknr = $pget";
+ if ($userid = $dbc->querySingleItem($sql))
+ {
+ $resu=1; $resr=1; $resp=1;
+ if ($userid != $rt["userid"])
+ {
+ // alte userid und Rechte dazu loeschen -> CASCADE DELETE
+ $resu = $dbc -> execute("DELETE FROM fhiiqm.userweb WHERE userid ='" . $userid . "'");
+ }
+ else
+ {
+ // alte Rechte loeschen
+ $sql = "DELETE FROM fhiiqm.user_recht WHERE userid ='" . $userid . "'";
+ $resr = $dbc -> execute($sql);
+ $sql = "DELETE FROM fhiiqm.user_prodgroup WHERE userid ='" . $userid . "'";
+ $resp = $dbc -> execute($sql);
+ }
+ }
+ if (!$resu || !$resr || !$resp) $erruid = 1;
+
+ }
+ if ($del)
+ {
+ // User loeschen
+ $sql = "DELETE FROM fhiiqm.userweb WHERE userid ='" . $rt["userid"] . "'";
+ $res = $dbc -> execute($sql);
+ if ($res)
+ echo "<p class='green'><b>User-ID '".$rt["userid"]."' und zugeordete Rechte wurden gelöscht.</b></p>\n";
+ else
+ echo "<p class='red'><b>Löschen von User-ID '".$rt["userid"]."' und zugeordeter Rechte ist fehlgeschlagen.</b></p>\n";
+ $erruid = 1; //
+ }
+ if (!$erruid)
+ { // Rechte speichern
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $result = 1;
+ if ($ins == "eingeben" || $userid != $rt["userid"])
+ {
+ $stmt -> prepare("INSERT INTO fhiiqm.userweb (persknr, userid) VALUES (?,?)");
+ $stmt -> bind_param('is',$rt["pid"],$rt["userid"]);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error userweb: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
+ $stmt -> reset();
+ }
+ if ($result)
+ {
+ $resr = 1;
+ if (is_array($rt["recht"]) && !is_null($rt["recht"]))
+ {
+ $stmt -> prepare("INSERT INTO fhiiqm.user_recht (userid,recht_ID) VALUES (?,?)");
+ foreach ($rt["recht"] as $re)
+ {
+ $stmt -> bind_param('ss',$rt["userid"],$re);
+ $resr = $stmt -> execute();
+ }
+ if ($stmt->error) echo "error user_recht: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
+ $stmt -> reset();
+ }
+ $resp = 1;
+ if (is_array($rt["prodg"]) && !is_null($rt["prodg"]))
+ {
+ $stmt -> prepare("INSERT INTO fhiiqm.user_prodgroup (userid,prod_group_ID) VALUES (?,?)");
+ foreach ($rt["prodg"] as $re)
+ {
+ $stmt -> bind_param('ss',$rt["userid"],$re);
+ $resp = $stmt -> execute();
+ }
+ }
+ if ($stmt->error) echo "error user_prodgroup: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
+
+ }
+// $stmt -> close();
+ }
+ if ($result && $resu && $resr && $resp)
+ echo "<p class='green'><b>User-ID '".$rt["userid"]."' und zugeordete Rechte wurden erfolgreich gespeichert.</b></p>\n";
+ else
+ {
+ echo "<p class='red'><b>Speichern von User-ID '".$rt["userid"]."' und zugeordeter Rechte war nicht erfolgreich.</b></p>\n";
+ echo "result = $result, resu=$res, resr=$resr, resp=$resp<br />";
+ }
+ }
+ $dbc -> close();
+ echo "</div>\n";
+ echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Rechte erfassen\">Weiteren Nutzer & Rechte erfassen</a></p>\n";
+ echo "<p class='sc'> <a href='/fhiiqm/recht_list.php' title='Nutzerliste'>zur Nutzerliste</a></p>";
+ }
+?>
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/recht_list.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/recht_list.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,202 +1,202 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 10/2011
- *
- * Liste User fhiiqm
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rte",$_SESSION["recht"]) && !in_array("rtr",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
- <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
- <title>Nutzer fhiiqm</title>
-</head>
-
-<body>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/user_go.png\" border=\"0\" alt=\"User, Rechte eingeben\" title=\"User, Rechte eingeben\"/></div>\n";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- echo "<div align='center'>\n";
- echo "<table><tr><td class='valignb'>";
-
- $sql = "SELECT u.persknr, CONCAT (nachname, ', ',vorname) AS ma, abt_name, userid,
- CASE WHEN ISNULL(pwd) THEN '-' ELSE 'ja' END AS pw
- FROM fhiiqm.userweb u INNER JOIN fhiiqm.Mitarbeiter m ON u.persknr = m.persknr
- LEFT OUTER JOIN fhiiqm.Abteilung a ON m.abt_tel=a.abt_ID
- ORDER BY userid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
-
- echo "<div align='center'>\n";
- echo "<p><b>Liste der fhiiqm-Nutzer</b></p>\n";
- echo "<p>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Sichten/Bearbeiten der Nutzer-Rechte</p>";
-
- echo "<table cellpadding='2' cellspacing='2'>\n";
- // Listenkopf
- echo "<tr bgcolor='#68ACBF'>";
- echo "<th>Mitarbeiter</th><th>Abt.</th><th>userid</th><th>passwort?</th><th> </th></tr>\n";
- foreach ($result as $row)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- echo "<tr bgcolor='" . $bg . "'><td><b>$row->ma</b></td>";
- echo "<td>$row->abt_name</td>";
- echo "<td>$row->userid</td>";
- echo "<td class='center'>$row->pw</td>";
- echo "<td><a href='/fhiiqm/recht_ed.php?pid=$row->persknr'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td></tr>\n";
- }
- echo "</table></div>\n";
- }
- echo "</td><td class='valignb'>";
- // Liste der Rechte je userid
- $sql = "SELECT userid,
- count(CASE recht_ID WHEN 'ar' THEN 1 END) AS anlage_read,
- COUNT(CASE recht_ID WHEN 'ae' THEN 1 END) AS anlage_edit,
- COUNT(CASE recht_ID WHEN 'asr' THEN 1 END) AS as_read,
- COUNT(CASE recht_ID WHEN 'ase' THEN 1 END) AS as_edit,
- COUNT(CASE recht_ID WHEN 'ddr' THEN 1 END) AS dez_dat_read,
- COUNT(CASE recht_ID WHEN 'dde' THEN 1 END) AS dez_dat_edit,
- COUNT(CASE recht_ID WHEN 'fmr' THEN 1 END) AS funkt_ma_read,
- COUNT(CASE recht_ID WHEN 'fme' THEN 1 END) AS funkt_ma_edit,
- COUNT(CASE recht_ID WHEN 'ir' THEN 1 END) AS info_read,
- COUNT(CASE recht_ID WHEN 'ie' THEN 1 END) AS info_edit,
- COUNT(CASE recht_ID WHEN 'kr' THEN 1 END) AS key_read,
- COUNT(CASE recht_ID WHEN 'ke' THEN 1 END) AS key_edit,
- COUNT(CASE recht_ID WHEN 'lr' THEN 1 END) AS laser_read,
- COUNT(CASE recht_ID WHEN 'le' THEN 1 END) AS laser_edit,
- COUNT(CASE recht_ID WHEN 'mtr' THEN 1 END) AS ma_tel_read,
- COUNT(CASE recht_ID WHEN 'mte' THEN 1 END) AS ma_tel_edit,
- COUNT(CASE recht_ID WHEN 'pr' THEN 1 END) AS prod_read,
- COUNT(CASE recht_ID WHEN 'pe' THEN 1 END) AS prod_edit,
- COUNT(CASE recht_ID WHEN 'pzr' THEN 1 END) AS proz_read,
- COUNT(CASE recht_ID WHEN 'pze' THEN 1 END) AS proz_edit,
- COUNT(CASE recht_ID WHEN 'rr' THEN 1 END) AS raum_read,
- COUNT(CASE recht_ID WHEN 're' THEN 1 END) AS raum_edit,
- COUNT(CASE recht_ID WHEN 'rtr' THEN 1 END) AS recht_read,
- COUNT(CASE recht_ID WHEN 'rte' THEN 1 END) AS recht_edit,
- COUNT(CASE recht_ID WHEN 'vr' THEN 1 END) AS vertrag_read,
- COUNT(CASE recht_ID WHEN 've' THEN 1 END) AS vertrag_edit,
- COUNT(CASE recht_ID WHEN 'vpr' THEN 1 END) AS vertr_part_read,
- COUNT(CASE recht_ID WHEN 'vpe' THEN 1 END) AS vertr_part_edit
- FROM `fhiiqm`.`user_recht`
- GROUP BY userid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
-
- echo "<div align='center'>\n";
- echo "<p><br /><b>fhiiqm-Nutzer und zugeordnete Rechte</b> ('edit' impliziert 'read')</p>\n";
-
- echo "<table cellpadding='2' cellspacing='2'>\n";
- // Listenkopf
- echo "<tr bgcolor='#68ACBF'>";
- echo "<th> </th>
- <th colspan='2'>Anlage</th>
- <th colspan='2'>Arb.Sichh.</th>
- <th colspan='2'>Funkt.-MA</th>
- <th colspan='2'>Info</th>
- <th colspan='2'>Laser</th>
- <th colspan='2'>MA-Tel.</th>
- <th colspan='2'>Produkt</th>
- <th colspan='2'>Prozess</th>
- <th colspan='2'>Raum</th>
- <th colspan='2'>Vertrag</th>
- <th colspan='2'>Vertr.Partner</th>
- <th colspan='2'>dez. Daten</th>
- <th colspan='2'>Schlüs.-Vw</th>
- <th colspan='2'>Recht</th></tr>\n";
- echo "<tr bgcolor='#68ACBF'>";
- echo "<th>userid</th><th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- <th>read</th><th>edit</th>
- </tr>\n";
- foreach ($result as $row)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- echo "<tr bgcolor='" . $bg . "'><td><b>$row->userid</b><img src=\"/fhiiqm/img/transp.png\" width=\"2\" height=\"12\" border='0'/></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->anlage_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->anlage_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->as_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->as_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->funkt_ma_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->funkt_ma_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->info_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->info_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->laser_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->laser_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->ma_tel_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->ma_tel_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->prod_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->prod_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->proz_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->proz_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->raum_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->raum_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertrag_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertrag_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertr_part_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertr_part_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->dez_dat_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->dez_dat_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->key_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->key_edit)) ."</b></td>";
- echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->recht_read)) ."</b></td>";
- echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->recht_edit)) ."</b></td>";
- echo "</tr>\n";
- }
- echo "</table></div>\n";
- }
-
- echo "</td></tr></table></div>\n";
-
- if (!is_null($_SESSION["recht"]) && in_array("re",$_SESSION["recht"]))
- echo "<p class=\"sc\"> <a href=\"/fhiiqm/recht_ed.php\" target=\"_self\" title=\"Nutzer erfassen\">Weiteren Nutzer & Rechte erfassen</a></p>\n";
-
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 10/2011
+ *
+ * Liste User fhiiqm
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rte",$_SESSION["recht"]) && !in_array("rtr",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>
+ <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>
+ <title>Nutzer fhiiqm</title>
+</head>
+
+<body>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/user_go.png\" border=\"0\" alt=\"User, Rechte eingeben\" title=\"User, Rechte eingeben\"/></div>\n";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ echo "<div align='center'>\n";
+ echo "<table><tr><td class='valignb'>";
+
+ $sql = "SELECT u.persknr, CONCAT (nachname, ', ',vorname) AS ma, abt_name, u.userid,
+ CASE WHEN ISNULL(pwd) THEN '-' ELSE 'ja' END AS pw
+ FROM fhiiqm.userweb u INNER JOIN fhiiqm.Mitarbeiter m ON u.persknr = m.persknr
+ LEFT OUTER JOIN fhiiqm.Abteilung a ON m.abt_tel=a.abt_ID
+ ORDER BY u.userid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+
+ echo "<div align='center'>\n";
+ echo "<p><b>Liste der fhiiqm-Nutzer</b></p>\n";
+ echo "<p>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Sichten/Bearbeiten der Nutzer-Rechte</p>";
+
+ echo "<table cellpadding='2' cellspacing='2'>\n";
+ // Listenkopf
+ echo "<tr bgcolor='#68ACBF'>";
+ echo "<th>Mitarbeiter</th><th>Abt.</th><th>userid</th><th> </th></tr>\n";
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='" . $bg . "'><td><b>$row->ma</b></td>";
+ echo "<td>$row->abt_name</td>";
+ echo "<td>$row->userid</td>";
+// echo "<td class='center'>$row->pw</td>";
+ echo "<td><a href='/fhiiqm/recht_ed.php?pid=$row->persknr'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td></tr>\n";
+ }
+ echo "</table></div>\n";
+ }
+ echo "</td><td class='valignb'>";
+ // Liste der Rechte je userid
+ $sql = "SELECT userid,
+ count(CASE recht_ID WHEN 'ar' THEN 1 END) AS anlage_read,
+ COUNT(CASE recht_ID WHEN 'ae' THEN 1 END) AS anlage_edit,
+ COUNT(CASE recht_ID WHEN 'asr' THEN 1 END) AS as_read,
+ COUNT(CASE recht_ID WHEN 'ase' THEN 1 END) AS as_edit,
+ COUNT(CASE recht_ID WHEN 'ddr' THEN 1 END) AS dez_dat_read,
+ COUNT(CASE recht_ID WHEN 'dde' THEN 1 END) AS dez_dat_edit,
+ COUNT(CASE recht_ID WHEN 'fmr' THEN 1 END) AS funkt_ma_read,
+ COUNT(CASE recht_ID WHEN 'fme' THEN 1 END) AS funkt_ma_edit,
+ COUNT(CASE recht_ID WHEN 'ir' THEN 1 END) AS info_read,
+ COUNT(CASE recht_ID WHEN 'ie' THEN 1 END) AS info_edit,
+ COUNT(CASE recht_ID WHEN 'kr' THEN 1 END) AS key_read,
+ COUNT(CASE recht_ID WHEN 'ke' THEN 1 END) AS key_edit,
+ COUNT(CASE recht_ID WHEN 'lr' THEN 1 END) AS laser_read,
+ COUNT(CASE recht_ID WHEN 'le' THEN 1 END) AS laser_edit,
+ COUNT(CASE recht_ID WHEN 'mtr' THEN 1 END) AS ma_tel_read,
+ COUNT(CASE recht_ID WHEN 'mte' THEN 1 END) AS ma_tel_edit,
+ COUNT(CASE recht_ID WHEN 'pr' THEN 1 END) AS prod_read,
+ COUNT(CASE recht_ID WHEN 'pe' THEN 1 END) AS prod_edit,
+ COUNT(CASE recht_ID WHEN 'pzr' THEN 1 END) AS proz_read,
+ COUNT(CASE recht_ID WHEN 'pze' THEN 1 END) AS proz_edit,
+ COUNT(CASE recht_ID WHEN 'rr' THEN 1 END) AS raum_read,
+ COUNT(CASE recht_ID WHEN 're' THEN 1 END) AS raum_edit,
+ COUNT(CASE recht_ID WHEN 'rtr' THEN 1 END) AS recht_read,
+ COUNT(CASE recht_ID WHEN 'rte' THEN 1 END) AS recht_edit,
+ COUNT(CASE recht_ID WHEN 'vr' THEN 1 END) AS vertrag_read,
+ COUNT(CASE recht_ID WHEN 've' THEN 1 END) AS vertrag_edit,
+ COUNT(CASE recht_ID WHEN 'vpr' THEN 1 END) AS vertr_part_read,
+ COUNT(CASE recht_ID WHEN 'vpe' THEN 1 END) AS vertr_part_edit
+ FROM `fhiiqm`.`user_recht`
+ GROUP BY userid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+
+ echo "<div align='center'>\n";
+ echo "<p><br /><b>fhiiqm-Nutzer und zugeordnete Rechte</b> ('edit' impliziert 'read')</p>\n";
+
+ echo "<table cellpadding='2' cellspacing='2'>\n";
+ // Listenkopf
+ echo "<tr bgcolor='#68ACBF'>";
+ echo "<th> </th>
+ <th colspan='2'>Anlage</th>
+ <th colspan='2'>Arb.Sichh.</th>
+ <th colspan='2'>Funkt.-MA</th>
+ <th colspan='2'>Info</th>
+ <th colspan='2'>Laser</th>
+ <th colspan='2'>MA-Tel.</th>
+ <th colspan='2'>Produkt</th>
+ <th colspan='2'>Prozess</th>
+ <th colspan='2'>Raum</th>
+ <th colspan='2'>Vertrag</th>
+ <th colspan='2'>Vertr.Partner</th>
+ <th colspan='2'>dez. Daten</th>
+ <th colspan='2'>Schlüs.-Vw</th>
+ <th colspan='2'>Recht</th></tr>\n";
+ echo "<tr bgcolor='#68ACBF'>";
+ echo "<th>userid</th><th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ <th>read</th><th>edit</th>
+ </tr>\n";
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='" . $bg . "'><td><b>$row->userid</b><img src=\"/fhiiqm/img/transp.png\" width=\"2\" height=\"12\" border='0'/></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->anlage_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->anlage_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->as_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->as_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->funkt_ma_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->funkt_ma_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->info_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->info_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->laser_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->laser_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->ma_tel_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->ma_tel_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->prod_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->prod_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->proz_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->proz_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->raum_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->raum_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertrag_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertrag_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertr_part_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->vertr_part_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->dez_dat_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->dez_dat_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->key_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->key_edit)) ."</b></td>";
+ echo "<td class='center'><b>" . str_replace("0"," ",str_replace("1","x",$row->recht_read)) ."</b></td>";
+ echo "<td class='center green'><b>" . str_replace("0"," ",str_replace("1","x",$row->recht_edit)) ."</b></td>";
+ echo "</tr>\n";
+ }
+ echo "</table></div>\n";
+ }
+
+ echo "</td></tr></table></div>\n";
+
+ if (!is_null($_SESSION["recht"]) && in_array("re",$_SESSION["recht"]))
+ echo "<p class=\"sc\"> <a href=\"/fhiiqm/recht_ed.php\" target=\"_self\" title=\"Nutzer erfassen\">Weiteren Nutzer & Rechte erfassen</a></p>\n";
+
+?>
+</body>
</html>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/report/keytyp_bestand_all_report.php Thu Sep 12 09:04:56 2013 +0200
@@ -0,0 +1,305 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 08/2013
+ *
+ * Report Keytyp wo/wer, Anzahl (MA und Depots)
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("kr",$_SESSION["recht"]) && !in_array("ke",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ // zulaessige Depots
+ $uid = $_SESSION["userid"];
+ $sql = "SELECT depot_ID FROM KeyDepot_userweb WHERE userid = '$uid'";
+ $res = $dbc -> queryObjectArray($sql);
+ foreach ($res as $row)
+ $adep[] = $row->depot_ID;
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <title>Report Übersicht Schlüsseltypen</title>
+</head>
+
+<body>
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"/fhiiqm/img/key.png\" border=\"0\" alt=\"Keytyp Ü:bersicht\" title=\"Schlüsseltypen Bestand\"/></div>\n";
+
+ $ky = $_POST["ky"]; // Parameter aus Form
+ $search = $_POST["search"];
+ if (!$search) $search = $_GET["s"];
+
+ $zeil = $ky["z"];
+ if (!$zeil) $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 9999; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+
+ if (!is_array($ky))
+ {
+ $ky["kt"] = $_GET["k"];
+ $ky["sort1"] = $_GET["s1"];
+ $ky["sort2"] = $_GET["s2"];
+ }
+ $_GET["k"] = $ky["kt"];
+ $_GET["s1"]= $ky["sort1"];
+ $_GET["s2"]= $ky["sort2"];
+ $_GET["z"] = $zeil;
+
+ if ($search)
+ {
+ echo "<span class='sc'>";
+ echo "<br /> <a href=\"/fhiiqm/keytyp_report.php\" target=\"_self\" title=\"Berichte\" class='sc'>« zur Berichtsübersicht</a>";
+ echo " | <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Keytyp Bestand\" class=\"sc\">neuer Bericht Bestand Schlüsseltyp gesamt</a>\n";
+ echo "</span>";
+ }
+
+ echo "<div align='center'>\n";
+ echo "<p><b>Bericht Bestand Schlüsseltyp Depot und Mitarbeiter</b></p>\n";
+ echo "<p>- zeigt alle Schlüsseltypen und deren Besitzer aus dem gewählten Depot und im Depot selbst<br />
+ - wenn kein Depot gewählt wurde, werden alle oder nur der gewählte Schlüsseltyp von allen Depots angezeigt<p>";
+ echo "</div>\n";
+
+
+ if (!$search)
+ {
+?>
+ <div align="center">
+ <p>Bitte Kriterien für die Suche wählen</p>
+ <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_raum" target="_self">
+ <table width="50%" border="0" cellspacing="3" cellpadding="3">
+
+ <tr>
+ <td>Depot</td>
+ <td><select name="ky[dep]">
+ <?php
+ if ($ky["dep"] == -1) $select = "selected='selected'"; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $strdep = "'". implode("','",$adep) ."'";
+ $sql = "SELECT * FROM fhiiqm.KeyDepot WHERE depot_ID IN ($strdep)";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ {
+ if ($row->depot_ID == $ky['dep']) $select = "selected='selected'"; else $select = "";
+ echo "<option $select value=\"$row->depot_ID\">$row->depot_ID: $row->depot_bez</option>\n";
+ }
+ $beg=0;
+ ?>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Schlüsseltyp</td>
+ <td><select name="ky[kt]">
+ <?php
+ if ($ky["kt"] == -1) $select = "selected='selected'"; else $select = "";
+ echo "<option $select value=\"-1\"></option>\n";
+ $strdep = "'". implode("','",$adep) ."'";
+ $sql = "SELECT key_level,keytyp_ID,keytyp_bez
+ FROM Keytyp
+ ORDER BY key_level";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ {
+ if ($row->keytyp_ID == $ky['kt']) $select = "selected='selected'"; else $select = "";
+ echo "<option $select value=\"$row->keytyp_ID\">$row->key_level - $row->keytyp_ID [$row->keytyp_bez] </option>\n";
+ }
+ $beg=0;
+ ?>
+ </select>
+ </tr>
+ <tr>
+ <td>Sortierung nach<br />(in dieser Reihenfolge)</td><td>
+ <?php
+ $sort = array("-1"=>"","1"=>"Schlüsseltyp","2"=>"Level","3"=>"Besitzer");
+ for ($i=1; $i<3; $i++)
+ {
+ echo "$i. <select name='ky[sort$i]'>\n";
+ foreach ($sort as $key=>$val)
+ {
+ $rsort = "sort" . $i;
+ if ($ky[$rsort] == $val) $select = "selected='selected'"; else $select = "";
+ echo "<option $select value='$key'>$val</option>\n";
+ }
+ echo "</select> \n";
+ }
+ echo "</td></tr>\n";
+
+ $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
+ echo "<tr><td>Zeilen/Seite?</td><td><select name='ky[z]'>\n";
+ if (!$ky['z']) $ky['z'] = 9999;
+ foreach ($azeil as $key=>$val)
+ {
+ if ($key == $ky['z']) $select = "selected='selected'"; else $select = "";
+ echo "<option $select value='$key'>$val</option>\n";
+ }
+ echo "</select></td></tr>\n";
+
+ ?>
+ <tr>
+ <td> </td>
+ <td><input class="button" type="submit" name="search" value="Bericht erstellen"/></td>
+ </tr>
+ </table>
+ </div>
+ </form>
+<?php
+
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+
+ $lim = " LIMIT $start,$zeil";
+ $where = "";
+ if ($ky["kt"]> -1)
+ $where = " h.keytyp_ID = '$ky[kt]' ";
+ if ($where) $where = " AND ($where)";
+/*
+ if ($ky["dep"]> -1)
+ $where .= " AND (h.depot_ID = '$ky[dep]' OR h.depot_ID IS NULL)";
+*/
+ if ($ky["dep"] > -1)
+ {
+ $sql = "SELECT DISTINCT keytyp_ID FROM Keytyp_Depot WHERE depot_ID = '".$ky["dep"]."'";
+ $res = $dbc -> queryObjectArray($sql);
+ foreach ($res as $row)
+ $akeyt[] = $row->keytyp_ID;
+ $strkt = "'". implode("','",$akeyt) ."'";
+ $wherk = " AND h.keytyp_ID IN ($strkt) ";
+ $wherd = " AND h.depot_ID = '".$ky["dep"]."'";
+ }
+ if ($ky["sort1"]>0 || $ky["sort2"]>0)
+ {
+ if ($ky["sort1"]>0) $ord = " ORDER BY " . $ky["sort1"];
+ if ($ky["sort2"]>0) $ord .= ",".$ky["sort2"];
+ }
+
+ $sql = "SELECT h.keytyp_ID, key_level,
+ CONCAT (nachname, ', ',vorname, ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 0 THEN 'inaktiv' ELSE 'aktiv' END, ')') AS keyowner, h.depot_ID, 'ma' AS tab,
+ SUM(CASE WHEN pers_action='get' THEN IFNULL(pers_anz,0) ELSE 0 END) - SUM(CASE WHEN pers_action='out' THEN IFNULL(pers_anz,0) ELSE 0 END) - SUM(CASE WHEN pers_action='lost' THEN IFNULL(pers_anz,0) ELSE 0 END) AS bestand
+ FROM fhiiqm.Mitarbeiter m
+ INNER JOIN Keytyp_MA h ON m.persknr=h.persknr
+ INNER JOIN Keytyp k ON h.keytyp_ID = k.keytyp_ID
+ LEFT OUTER JOIN Abteilung a ON m.abt_tel=a.abt_ID
+ WHERE m.aktiv<2
+ GROUP BY h.keytyp_ID, key_level,keyowner
+ HAVING bestand > 0 $where $wherk
+ UNION
+ SELECT h.keytyp_ID, key_level,CONCAT(depot_ID,'-Depot') AS keyowner, h.depot_ID, 'dep' AS tab,
+ SUM(CASE WHEN depot_action='get' THEN IFNULL(depot_anz,0) ELSE 0 END) - SUM(CASE WHEN depot_action='out' THEN IFNULL(depot_anz,0) ELSE 0 END) - SUM(CASE WHEN depot_action='lost' THEN IFNULL(depot_anz,0) ELSE 0 END) AS bestand
+ FROM fhiiqm.Keytyp_Depot h INNER JOIN Keytyp k ON h.keytyp_ID = k.keytyp_ID
+ GROUP BY h.keytyp_ID, key_level,keyowner
+ HAVING bestand > 0 $where $wherd";
+ $ianz = $dbc -> numrows($sql);
+ $sql .= $ord . $lim;
+//echo $sql . "<br />";
+ $result = $dbc ->queryObjectArray($sql);
+ if ($dbc -> error)
+ {
+ echo "error SELECT: " . $dbc -> error . "<br /><br />";
+ echo "sql = $sql<br />\n";
+ }
+ $krit = "";
+ if ($ky["kt"] > -1)
+ {
+ $krit = " [Schlüsseltyp = <b>'".$ky["kt"]."'</b>]";
+ }
+ if ($ky["dep"] > -1)
+ {
+ if ($krit > " ") $bd = " UND"; else $bd = "";
+ $krit .= $bd ." [Depot = <b>'".$ky["dep"]."'</b>]";
+ }
+ if ($krit )echo "Suchergebnis für $krit"; else echo "Suchergebnis\n";
+ printf ("<p>Anzahl Besitzer: %s</p>", $ianz);
+ if ($result)
+ {
+ include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ echo "<table border='1' cellspacing='0' cellpadding='2'>\n";
+ // Listenkopf
+ echo "<tr bgcolor='#68ACBF'>";
+ if ($ky["sort1"] == 2)
+ echo "<th>Level</th><th>Schlüsseltyp</th>";
+ else
+ echo "<th>Schlüsseltyp</th><th>Level</th>";
+ echo "<th>Besitzer</th><th>Anzahl</th>";
+ $anzt = 0;
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='" . $bg . "'>";
+ if ($ky["sort1"] == 2)
+ echo "<td>$row->key_level</td><td>$row->keytyp_ID</td>";
+ else
+ echo "<td>$row->keytyp_ID</td><td>$row->key_level</td>";
+ if ($row->tab == 'dep') $cl = " class = 'bold'"; else $cl = "";
+ echo "<td$cl>$row->keyowner</td>";
+ echo "<td class='right'>$row->bestand</td>";
+ echo "</tr>";
+ $anzt += $row->bestand;
+ }
+ echo "<tr><td colspan='2'> </td><td>Summe</td><td class='right'>$anzt</td></tr>";
+ echo "</table>\n";
+ echo "<p></p><table width=40%><tr><td class='right'><a href=\"javascript:window.print()\" class='sc'>
+ <img src=\"/fhiiqm/img/printer.png\" alt=\"Bericht drucken\" border=\"0\" align=\"right\" title=\"Bericht drucken\"></a></td></tr></table>";
+ echo "</div>\n";
+
+ echo "<br /> ";
+ if ($search != 2) // Aufruf aus fhiiqm
+ {
+ // Parameter aus $_GET fuer weitere Seiten
+ $_GET["s"] = 1; // bewirkt weitere Suche
+ foreach ($_GET as $key=>$val)
+ {
+ if ($key != "st") $liste .= "&" . $key ."=".$val;
+ }
+ // Links auf andere Seiten generieren
+ liste_links($start,$zeil,$ianz,$liste);
+ }
+ }
+ else
+ {
+ echo "<p class='red'> Leider gibt es kein Ergebnis für die von Ihnen gewählten Kriterien!</p>";
+ echo "</div>\n";
+ echo "<br /> ";
+ }
+ echo "<span class='sc'>";
+ echo "<br /><br /> <a href=\"/fhiiqm/keytyp_report.php\" target=\"_self\" title=\"Berichte\" class='sc'>« zur Berichtsübersicht</a>";
+ echo " | <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Übersicht Keytyp\" class=\"sc\">neuer Bericht Bestand Schlüsseltyp gesamt</a>\n";
+ echo "</span>";
+ }
+?>
+</body>
+</html>
\ No newline at end of file
--- a/fhiiqm/start.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/start.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,65 +1,65 @@
-<?php
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- header("Location: /fhiiqm/login.php");
- exit;
- }
-?>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<!--
-<!DOCTYPE html>
-<html>
--->
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
- <link href="/fhiiqm/css/navio.css" rel="STYLESHEET" type="TEXT/CSS" />
- <meta name="author" content="Bettina Schwarzer, FHI" />
-
- <title>FHI Administration</title>
-</head>
-
-<body>
-<?php
- echo "<div class='float-r smaller'>user: " . $_SESSION["userid"];
- echo " <a href='/fhiiqm/pw_change.php' title='PW ändern'>pw ändern</a>";
- echo " <a href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
-
- echo "<div id=\"navi\">\n
- <h3> Datenbank für die Administration und Infrastruktur im FHI</h3>\n";
-// print_r ($_SESSION['recht']);
-
- include_once($_SERVER["DOCUMENT_ROOT"] . "/fhiiqm/inc/menu.inc.php");
-
- echo "<p><br /> <a href='/fhiiqm/infos/123_fhiiqm_anwenderdoc.pdf' title='Anwenderdokumentaion' target='_blank'>Anwender-Dokumentation (Gesamt)</a><br /> </p>\n";
- if (in_array("mte",$_SESSION["recht"]))
- echo "<p> <a href='/fhiiqm/infos/237_fhiiqm_telefon.pdf' title='Mitarbeiter - Telefon' target='_blank'>Mitarbeiter-Telefon erfassen, -Liste</a></p>\n";
- if (in_array("kr",$_SESSION["recht"]) || in_array("ke",$_SESSION["recht"]))
- echo "<p> <a href='/fhiiqm/infos/251_fhiiqm_keytyp.pdf' title='Schlüsselverwaltung' target='_blank'>Schlüsselverwaltung</a></p>\n";
- if (in_array("ddr",$_SESSION["recht"]) || in_array("dde",$_SESSION["recht"]))
- echo "<p> <a href='/fhiiqm/infos/186_fhiiqm_raumverantw.pdf' title='Raumverantwortliche' target='_blank'>Raumverantwortliche erfassen</a></p>\n";
- if (date("Y-m-d") < date("Y-m-d", mktime(0,0,0,12,25,2012)))
- {
- echo "<p> </p><p class='red'>
- <img src='/fhiiqm/img/weihnachtsmann.gif' height='75' />";
- $heute = new DateTime();
- $weih = new DateTime('2012-12-24');
- $tage = $weih -> diff($heute)->days+1;
- if ($tage <2) $tag = "Tag"; else $tag="Tage";
- echo "<span class='valignt red bigger'>noch <b>$tage</b> $tag bis <em>Weihnachten</em>!</span></p>\n";
- }
-
-?>
-</div>
-<div id="renavi" align="right"><img src="/fhiiqm/img/fhi.jpg" border="0" alt="FHI" width="100%"/>
-<span class="smaller">Foto: Bettina Schwarzer [Juli 2011]</span>
-</div>
-
-</body>
+<?php
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ header("Location: /fhiiqm/login.php");
+ exit;
+ }
+?>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<!--
+<!DOCTYPE html>
+<html>
+-->
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
+ <link href="/fhiiqm/css/navio.css" rel="STYLESHEET" type="TEXT/CSS" />
+ <meta name="author" content="Bettina Schwarzer, FHI" />
+
+ <title>FHI Administration</title>
+</head>
+
+<body>
+<?php
+ echo "<div class='float-r smaller'>user: " . $_SESSION["userid"];
+// echo " <a href='/fhiiqm/pw_change.php' title='PW ändern'>pw ändern</a>"; // am 30.08.2013 entfernt, bs
+ echo " <a href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+
+ echo "<div id=\"navi\">\n
+ <h3> Datenbank für die Administration und Infrastruktur im FHI</h3>\n";
+// print_r ($_SESSION['recht']);
+
+ include_once($_SERVER["DOCUMENT_ROOT"] . "/fhiiqm/inc/menu.inc.php");
+
+ echo "<p><br /> <a href='/fhiiqm/infos/123_fhiiqm_anwenderdoc.pdf' title='Anwenderdokumentaion' target='_blank'>Anwender-Dokumentation (Gesamt)</a><br /> </p>\n";
+ if (in_array("mte",$_SESSION["recht"]))
+ echo "<p> <a href='/fhiiqm/infos/237_fhiiqm_telefon.pdf' title='Mitarbeiter - Telefon' target='_blank'>Mitarbeiter-Telefon erfassen, -Liste</a></p>\n";
+ if (in_array("kr",$_SESSION["recht"]) || in_array("ke",$_SESSION["recht"]))
+ echo "<p> <a href='/fhiiqm/infos/251_fhiiqm_keytyp.pdf' title='Schlüsselverwaltung' target='_blank'>Schlüsselverwaltung</a></p>\n";
+ if (in_array("ddr",$_SESSION["recht"]) || in_array("dde",$_SESSION["recht"]))
+ echo "<p> <a href='/fhiiqm/infos/186_fhiiqm_raumverantw.pdf' title='Raumverantwortliche' target='_blank'>Raumverantwortliche erfassen</a></p>\n";
+ if (date("Y-m-d") < date("Y-m-d", mktime(0,0,0,12,25,2012)))
+ {
+ echo "<p> </p><p class='red'>
+ <img src='/fhiiqm/img/weihnachtsmann.gif' height='75' />";
+ $heute = new DateTime();
+ $weih = new DateTime('2012-12-24');
+ $tage = $weih -> diff($heute)->days+1;
+ if ($tage <2) $tag = "Tag"; else $tag="Tage";
+ echo "<span class='valignt red bigger'>noch <b>$tage</b> $tag bis <em>Weihnachten</em>!</span></p>\n";
+ }
+
+?>
+</div>
+<div id="renavi" align="right"><img src="/fhiiqm/img/fhi.jpg" border="0" alt="FHI" width="100%"/>
+<span class="smaller">Foto: Bettina Schwarzer [Juli 2011]</span>
+</div>
+
+</body>
</html>
\ No newline at end of file
--- a/fhiiqm/tel_flist.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/tel_flist.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,187 +1,187 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 11/2012
- *
- * Liste aller Telefone
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once ("inc/func_lib.inc.php");
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
-
- <title>Telefonliste</title>
-</head>
-
-<body onload="document.ffilter.filter.focus();">
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefondaten\" title=\"Telefondaten\"/></div>\n";
-
- // Felder, nach denen gefiltert werden kann
- $fields = array(2=>"Nummer",3=>"Typ",4=>"Haus", 5=>"Raum");
- $fieldf = array(2=>"telefon_nr",3=>"telefon_typ",4=>"geb_ID",5=>"raum_nr");
-
- $sort = $_GET["s"]; // Sortierung nach Spalte
- if (!isset($sort) && !$sort) $sort = $_POST["s"];
-
- $dir = $_GET["d"]; // Sortierrichtung
- if (!isset($dir) && !$dir) $dir = $_POST["d"];
-
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
-
- $filter = $_POST["filter"];
- if (!isset($filter) && !$filter) $filter = $_GET["b"];
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = $_POST["z"];
- if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
-
- if (!isset($fnum) || !$fnum) $fnum = 1;
- if (!isset($filter) || !$filter) $filter = "";
- if (!isset($sort) || !$sort) $sort = 2; // Name
- if (!$dir || $dir < "!") $dir = "";
-
- $subf = $_POST["subf"]; // submit
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
-// $sql = "SELECT 1, telefon_nr, telefon_typ, geb_ID, raum_nr FROM Telefon t LEFT OUTER JOIN Raum r ON t.raum_ID = r.raum_ID";
- $sql = "SELECT 1, telefon_nr, telefon_typ FROM Telefon";
- if (strtoupper($filter) == "NULL") $wher = " WHERE ". $fieldf[$fnum] . " IS NULL ";
- elseif ($filter) $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'%$filter%'";
- else $wher = "";
-// if ($sort == 4) $sort = "4,5";
- if ($sort) $ord = " ORDER BY $sort ";
- $sql .= $wher . $ord;
- $ianz = $dbc -> numrows($sql); // Anzahl DS
- $sql .= "LIMIT $start,$zeil";
-
- if ($result = $dbc -> queryObjectArray($sql))
- {
-
- $bg1 = "#F8F8F8";
- $bg2 = "#DEDFE1";
- $bg = "#FFFFFF";
- $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil"; // Parameter Listenanzeige
-
- echo "<div align='center'>\n";
- echo "<p><b>Telefonliste</b></p>\n";
-
- echo "<table border='0' cellspacing='0'>\n";
- echo "<td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
- können Sie nach bestimmten Spalten auf- bzw. absteigend sortieren</td></tr>
- <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach ausgewählten Spalten der Liste</td></tr>";
- echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Telefondaten</td></tr>";
- echo "</table><br />\n";
-
- if (isset($fnum) && $fnum>1 && !$filter && !$subf)
- {
- // Formular anzeigen fuer Filterbegriff
- $text = $fields[$fnum];
- $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
- echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
- echo "<input type='hidden' name='s' value='$sort'>";
- echo "<input type='hidden' name='d' value='$dir'>";
- echo "<input type='hidden' name='f' value='$fnum'>";
- echo "<table width=\"30%\" border=\"0\">\n";
- echo "<tr><td>filtern nach $text: </td>";
- echo "<td><input id='filter' name='filter' type=\"text\" size=\"20\" maxlength=\"30\" value=\"$filter\"/></td>";
- echo "<td>Zeilen/Seite? <select name='z'>\n";
- foreach ($azeil as $key=>$val)
- {
- if ($key == $zeil) $select = "selected"; else $select = "";
- echo "<option $select value='$key'>$val</option>\n";
- }
- echo "</select></td>\n";
- echo "<td><input class=\"button\" type=\"submit\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
- echo "</form>\n";
- echo "<p> </p>\n";
- }
- echo "<table width='15%'>\n";
- if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
-
- // Listenkopf generieren
- echo "<tr bgcolor='#68ACBF'>";
- tab_column(2,"Nummer",$sort,$dir,2,$fnum,$filter,$start,$zeil);
- tab_column(3,"Typ",$sort,$dir,3,$fnum,$filter,$start,$zeil);
-// tab_column(4,"Haus",$sort,$dir,4,$fnum,$filter,$start,$zeil);
-// tab_column(5,"Raum",$sort,$dir,5,$fnum,$filter,$start,$zeil);
- echo "<th> </th>";
- echo "</tr>\n";
- foreach ($result as $row)
- {
- if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
- echo "<tr bgcolor='$bg'><td>$row->telefon_nr</td>";
- $tt = ($row->telefon_typ == "fax")? strtoupper($row->telefon_typ) : $row->telefon_typ;
- echo "<td>$tt</td>";
-// echo "<td>$row->geb_ID</td>";
-// echo "<td>$row->raum_nr</td>";
- echo "<td><a href='/fhiiqm/tel_ed.php?i=".urlencode($row->telefon_nr).$getp."'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
- echo "</tr>\n";
- }
- echo "</table></div>\n";
- echo "<br /> ";
-
- // Sortierung und Filter aus $_GET fuer weitere Seiten
- foreach ($_GET as $key=>$val)
- {
- if ($key != "st") $liste .= "&" . $key ."=".$val;
- }
- // Sortierung und Filter aus $_POST fuer weitere Seiten
- if ($subf)
- foreach ($_POST as $key=>$val)
- {
- if ($key != "st" && $key != "subf" && $key != "filter") $liste .= "&" . $key ."=".$val;
- if ($key == "filter") $liste .= "&b=" . $val;
- }
-
- // Links auf andere Seiten generieren
- liste_links($start,$zeil,$ianz,$liste);
- }
- else
- {
- echo "<div align=center>";
- if ($dbc -> error)
- echo "error: " . $dbc -> error . "<br />\n";
- else
- {
- echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
- echo " <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n";
- }
- echo "</div>";
- }
-
-?>
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 11/2012
+ *
+ * Liste aller Telefone
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once ("inc/func_lib.inc.php");
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+
+ <title>Telefonliste</title>
+</head>
+
+<body onload="document.ffilter.filter.focus();">
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefondaten\" title=\"Telefondaten\"/></div>\n";
+
+ // Felder, nach denen gefiltert werden kann
+ $fields = array(2=>"Nummer",3=>"Typ",4=>"Haus", 5=>"Raum");
+ $fieldf = array(2=>"telefon_nr",3=>"telefon_typ",4=>"geb_ID",5=>"raum_nr");
+
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ if (!isset($sort) && !$sort) $sort = $_POST["s"];
+
+ $dir = $_GET["d"]; // Sortierrichtung
+ if (!isset($dir) && !$dir) $dir = $_POST["d"];
+
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
+
+ $filter = $_POST["filter"];
+ if (!isset($filter) && !$filter) $filter = $_GET["b"];
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = $_POST["z"];
+ if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+
+ if (!isset($fnum) || !$fnum) $fnum = 1;
+ if (!isset($filter) || !$filter) $filter = "";
+ if (!isset($sort) || !$sort) $sort = 2; // Name
+ if (!$dir || $dir < "!") $dir = "";
+
+ $subf = $_POST["subf"]; // submit
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+// $sql = "SELECT 1, telefon_nr, telefon_typ, geb_ID, raum_nr FROM Telefon t LEFT OUTER JOIN Raum r ON t.raum_ID = r.raum_ID";
+ $sql = "SELECT 1, telefon_nr, telefon_typ FROM Telefon";
+ if (strtoupper($filter) == "NULL") $wher = " WHERE ". $fieldf[$fnum] . " IS NULL ";
+ elseif ($filter) $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'%$filter%'";
+ else $wher = "";
+// if ($sort == 4) $sort = "4,5";
+ if ($sort) $ord = " ORDER BY $sort ";
+ $sql .= $wher . $ord;
+ $ianz = $dbc -> numrows($sql); // Anzahl DS
+ $sql .= "LIMIT $start,$zeil";
+
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil"; // Parameter Listenanzeige
+
+ echo "<div align='center'>\n";
+ echo "<p><b>Telefonliste</b></p>\n";
+
+ echo "<table border='0' cellspacing='0'>\n";
+ echo "<td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
+ können Sie nach bestimmten Spalten auf- bzw. absteigend sortieren</td></tr>
+ <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach ausgewählten Spalten der Liste</td></tr>";
+ echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Telefondaten</td></tr>";
+ echo "</table><br />\n";
+
+ if (isset($fnum) && $fnum>1 && !$filter && !$subf)
+ {
+ // Formular anzeigen fuer Filterbegriff
+ $text = $fields[$fnum];
+ $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
+ echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
+ echo "<input type='hidden' name='s' value='$sort'>";
+ echo "<input type='hidden' name='d' value='$dir'>";
+ echo "<input type='hidden' name='f' value='$fnum'>";
+ echo "<table width=\"30%\" border=\"0\">\n";
+ echo "<tr><td>filtern nach $text: </td>";
+ echo "<td><input id='filter' name='filter' type=\"text\" size=\"20\" maxlength=\"30\" value=\"$filter\"/></td>";
+ echo "<td>Zeilen/Seite? <select name='z'>\n";
+ foreach ($azeil as $key=>$val)
+ {
+ if ($key == $zeil) $select = "selected"; else $select = "";
+ echo "<option $select value='$key'>$val</option>\n";
+ }
+ echo "</select></td>\n";
+ echo "<td><input class=\"button\" type=\"submit\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
+ echo "</form>\n";
+ echo "<p> </p>\n";
+ }
+ echo "<table width='20%'>\n";
+ if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
+
+ // Listenkopf generieren
+ echo "<tr bgcolor='#68ACBF'>";
+ tab_column(2,"Nummer",$sort,$dir,2,$fnum,$filter,$start,$zeil);
+ tab_column(3,"Typ",$sort,$dir,3,$fnum,$filter,$start,$zeil);
+// tab_column(4,"Haus",$sort,$dir,4,$fnum,$filter,$start,$zeil);
+// tab_column(5,"Raum",$sort,$dir,5,$fnum,$filter,$start,$zeil);
+ echo "<th> </th>";
+ echo "</tr>\n";
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='$bg'><td>$row->telefon_nr</td>";
+ $tt = ($row->telefon_typ == "fax")? strtoupper($row->telefon_typ) : $row->telefon_typ;
+ echo "<td>$tt</td>";
+// echo "<td>$row->geb_ID</td>";
+// echo "<td>$row->raum_nr</td>";
+ echo "<td><a href='/fhiiqm/tel_ed.php?i=".urlencode($row->telefon_nr).$getp."'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
+ echo "</tr>\n";
+ }
+ echo "</table></div>\n";
+ echo "<br /> ";
+
+ // Sortierung und Filter aus $_GET fuer weitere Seiten
+ foreach ($_GET as $key=>$val)
+ {
+ if ($key != "st") $liste .= "&" . $key ."=".$val;
+ }
+ // Sortierung und Filter aus $_POST fuer weitere Seiten
+ if ($subf)
+ foreach ($_POST as $key=>$val)
+ {
+ if ($key != "st" && $key != "subf" && $key != "filter") $liste .= "&" . $key ."=".$val;
+ if ($key == "filter") $liste .= "&b=" . $val;
+ }
+
+ // Links auf andere Seiten generieren
+ liste_links($start,$zeil,$ianz,$liste);
+ }
+ else
+ {
+ echo "<div align=center>";
+ if ($dbc -> error)
+ echo "error: " . $dbc -> error . "<br />\n";
+ else
+ {
+ echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
+ echo " <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n";
+ }
+ echo "</div>";
+ }
+
+?>
+</body>
</html>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/test/calendar_simple.php Thu Sep 12 09:04:56 2013 +0200
@@ -0,0 +1,332 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 8/2013
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ $sub = $_POST["sub"];
+ $month = $_POST["mon"];
+ $year = $_POST["yr"];
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <title>Kalender Test</title>
+</head>
+
+<body>
+
+<?php
+ $amon = array("1"=>"Januar","2"=>"Februar","3"=>"März","4"=>"April","5"=>"Mai","6"=>"Juni","7"=>"Juli","8"=>"August","9"=>"September","10"=>"Oktober","11"=>"November","12"=>"Dezember");
+ $aday = array("0"=>"Mo","1"=>"Di","2"=>"Mi","3"=>"Do","4"=>"Fr","5"=>"Sa","6"=>"So");
+
+ //This gets today's date
+ if ($sub == ">")
+ {
+ $month += 1;
+ if ($month > 12)
+ {
+ $month=1;
+ $year += 1;
+ }
+ }
+ if ($sub == "<")
+ {
+ $month -= 1;
+ if ($month < 1)
+ {
+ $month=12;
+ $year -= 1;
+ }
+ }
+ if ($sub && $month && $year)
+ $date = mktime(0,0,0,$month,1,$year);
+ else
+ $date = time () ;
+ //This puts the day, month, and year in seperate variables
+ $day = date('d', $date) ;
+ $month = date('m', $date) ;
+ $year = date('Y', $date) ;
+//echo "mon = $month, jahr = $year, dat = $day.".".$month.".".$year<br />";
+
+ //Here we generate the first day of the month
+ $first_day = mktime(0,0,0,$month, 1, $year) ;
+ $first_day_prev = mktime(0,0,0,$month-1, 1, $year) ;
+ $first_day_next= mktime(0,0,0,$month+1, 1, $year) ;
+
+ //This gets us the month name
+ $title = $amon[date('n', $first_day)] ;
+ $titlep = $amon[date('n', $first_day_prev)] ;
+ $titlen = $amon[date('n', $first_day_next)] ;
+
+ //Here we find out what day of the week the first day of the month falls on
+ $day_of_week = date('D', $first_day) ;
+ $day_of_weekp = date('D', $first_day_prev) ;
+ $day_of_weekn = date('D', $first_day_next) ;
+
+ //Once we know what day of the week it falls on, we know how many blank days occure before it. If the first day of the week is a Sunday then it would be zero
+
+ switch($day_of_week)
+ {
+ case "Mon": $blank = 0; $day_nr = 0; break;
+ case "Tue": $blank = 1; $day_nr = 1; break;
+ case "Wed": $blank = 2; $day_nr = 2; break;
+ case "Thu": $blank = 3; $day_nr = 3; break;
+ case "Fri": $blank = 4; $day_nr = 4; break;
+ case "Sat": $blank = 5; $day_nr = 5; break;
+ case "Sun": $blank = 6; $day_nr = 6; break;
+ }
+ switch($day_of_weekp)
+ {
+ case "Mon": $day_nrp = 0; break;
+ case "Tue": $day_nrp = 1; break;
+ case "Wed": $day_nrp = 2; break;
+ case "Thu": $day_nrp = 3; break;
+ case "Fri": $day_nrp = 4; break;
+ case "Sat": $day_nrp = 5; break;
+ case "Sun": $day_nrp = 6; break;
+ }
+ switch($day_of_weekn)
+ {
+ case "Mon": $day_nrn = 0; break;
+ case "Tue": $day_nrn = 1; break;
+ case "Wed": $day_nrn = 2; break;
+ case "Thu": $day_nrn = 3; break;
+ case "Fri": $day_nrn = 4; break;
+ case "Sat": $day_nrn = 5; break;
+ case "Sun": $day_nrn = 6; break;
+ }
+
+ //We then determine how many days are in the current month
+
+ $days_month = cal_days_in_month(0, $month, $year) ;
+ $monthn = $month+1;
+ $yearn = $year;
+ if ($monthn == 13) {$monthn = 1; $yearn = $year+1;}
+ $days_monthn = cal_days_in_month(0, $monthn, $yearn) ;
+ $monthp = $month-1;
+ $yearp = $year;
+ if ($monthp == 0) {$monthp = 12; $yearp = $year-1;}
+ $days_monthp = cal_days_in_month(0, $monthp, $yearp) ;
+//echo "aktueller Monat=$month, vorheriger Monat=$monthp, nächster Monat=$monthn<br />";
+/*
+ //Here we start building the table heads
+ echo "<div align='center'>";
+ echo "<table border=1 width=294>";
+
+ echo "<tr><th colspan=7> $title $year </th></tr>";
+
+ echo "<tr><td width=42>Mo</td><td width=42>Di</td><td width=42>Mi</td><td width=42>Do</td><td width=42>Fr</td><td width=42>Sa</td><td width=42>So</td></tr>";
+
+ //This counts the days in the week, up to 7
+
+ $day_count = 1;
+ echo "<tr>";
+
+ //first we take care of those blank days
+
+ while ( $blank > 0 )
+ {
+ echo "<td></td>";
+ $blank = $blank-1;
+ $day_count++;
+ }
+
+ //sets the first day of the month to 1
+
+ $day_num = 1;
+
+ //count up the days, untill we've done all of them in the month
+
+ while ( $day_num <= $days_in_month )
+ {
+ echo "<td> $day_num </td>";
+ $day_num++;
+ $day_count++;
+ //Make sure we start a new row every week
+ if ($day_count > 7)
+ {
+ echo "</tr><tr>";
+ $day_count = 1;
+ }
+ }
+ //Finaly we finish out the table with some blank details if needed
+
+ while ( $day_count >1 && $day_count <=7 )
+ {
+ echo "<td> </td>";
+ $day_count++;
+ }
+ echo "</tr></table>";
+ echo "</div>";
+*/
+ // Kalender als 1 Zeile
+ echo "<div align='center'>";
+ echo "<h3> Belegung Appartments FHI</h3>";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection("fhi");
+
+ $sql = "SELECT id, name, apt, von, bis FROM wover
+ WHERE Year(von) >= $year-1
+ ORDER BY von DESC, apt";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+// echo "<table>";
+ foreach ($result as $row)
+ {
+ if ($row->von)
+ {
+ $vond = new DateTime($row->von);
+ $vond = $vond -> format("d.m.Y");
+ }
+ else $vonf = $row->von;
+ if ($row->bis)
+ {
+ $bisd = new DateTime($row->bis);
+ $bisd = $bisd -> format("d.m.Y");
+ }
+ else $bisf = $row->bis;
+// echo "<tr><td>".$row->name . "</td><td>" .$row->apt . "</td><td>" .$vond . "</td><td>" .$bisd . "</td></tr>";
+ $aresv["id"][] = $row->id;
+ $aresv["name"][] = $row->name;
+ $aresv["apt"][] = $row->apt;
+ $aresv["von"][] = $row->von;
+ $aresv["bis"][] = $row->bis;
+ }
+// echo "</table>";
+// print_r ($aresv); echo "<br /><br />";
+ }
+
+ function aptres($daynr,$month,$year,$von,$bis,$name,$pos)
+ {
+ $aktdat = date('Y-m-d',mktime(0,0,0,$month,$daynr+1,$year));
+ if ($von <= $aktdat && $bis >= $aktdat)
+ return substr($name,$pos,1);
+ else return null;
+ }
+
+ function monat($day_nr,$days_month,$month,$year,$tit,$mon="")
+ {
+ global $aday;
+ global $aresv;
+ $clg = "class='bgmarkg1 center'";
+ $cl1 = "class='bgmarkg1 center'";
+ $cl2 = "class='bgmarkg2 center'";
+ echo "<table border=1 cellspacing='0' cellpadding='0'>";
+ echo "<tr><th class='center' colspan='$days_month' >$tit $year </th></tr>";
+ echo "<tr>";
+ $dnr = $day_nr;
+ // daynames
+ for ($i=0;$i<$days_month;$i++)
+ {
+ if ($dnr > 4) $cl = " class = 'bgmarkwe'"; else $cl = "";
+ if (($mon == "") || ($mon == "p" && $i>14) || ($mon == "n" && $i<15))
+ echo "<td$cl width='18'>".$aday[$dnr]."</td>\n";
+ if ($dnr<6) $dnr += 1; else $dnr = 0;
+ }
+ echo "</tr>\n";
+ echo "<tr>";
+ $dnr = $day_nr;
+ // daynumbers
+ for ($i=0;$i<$days_month;$i++)
+ {
+ if ($dnr > 4) $cl = " class = 'bgmarkwe center'"; else $cl = " class = 'center'";
+ if (($mon == "") || ($mon == "p" && $i>14) || ($mon == "n" && $i<15))
+ echo "<td$cl>".($i+1)."</td>\n";
+ if ($dnr<6) $dnr += 1; else $dnr = 0;
+ }
+ echo "</tr>";
+ for ($j=0; $j<11; $j++)
+ for ($i=0;$i<$days_month;$i++)
+ for ($k=0; $k<count($aresv["id"]);$k++)
+ {
+ $gn[$j][$i][$k] = "";
+ $pos[$j][$k] = 0;
+ }
+ // appartments
+ for ($j=0; $j<11; $j++)
+ {
+ if ($j == 3) $j +=1; // kein apt. 4
+ $dnr = $day_nr;
+ echo "<tr>";
+ for ($i=0;$i<$days_month;$i++)
+ {
+ if ($dnr > 4) $cl = " class = 'bgmarkwe center'"; else $cl = " class = 'center'";
+ if (($mon == "") || ($mon == "p" && $i>14) || ($mon == "n" && $i<15))
+ {
+ $anznam = 0;
+ for ($k=0; $k<count($aresv["id"]);$k++)
+ {
+ if ($aresv["apt"][$k] == ($j+1))
+ {
+ if ($namv[$i][$k] == $aresv["name"][$k]) $pos[$k] +=1;
+ // $nam = aptres($i,$month,$year,strtotime($aresv["von"][$k]),strtotime($aresv["bis"][$k]),$aresv["name"][$k]);
+ $nam = aptres($i,$month,$year,$aresv["von"][$k],$aresv["bis"][$k],$aresv["name"][$k],$pos[$j][$k]);
+ if ($nam)
+ {
+ if ($pos[$j][$k] == 0 && $clg == $cl1) $clg = $cl2;
+ elseif ($pos[$j][$k] == 0 && $clg == $cl2) $clg = $cl1;
+ $addr = "<a href='reserv_ed.php?i=".$aresv["id"][$k]."'>$nam</a>";
+ echo "<td $clg>".$addr."</td>\n";
+ if ($gn[$j][$i-1][$k] == $aresv["name"][$k]);
+ {
+ $pos[$j][$k] +=1;
+ }
+ $gn[$j][$i][$k] = $aresv["name"][$k];
+ $anznam +=1;
+ }
+ }
+ }
+ if (!$anznam)
+ {
+ echo "<td$cl>"." "."</td>\n";
+ }
+ }
+ if ($dnr<6) $dnr += 1; else $dnr = 0;
+ }
+ echo "</tr>";
+ }
+ echo "</table>\n";
+ }
+
+ echo "<table border='0' cellspacing='0' cellpadding='0'><tr>";
+ echo "<td><table border=1 cellspacing='0' cellpadding='0'><tr><td rowspan='3'> </td><td> </td></tr>\n";
+ echo "<tr><td> </td></tr><tr><td> </td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 1</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 2</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 3</td></tr>";
+// echo "<tr><td colspan='2'>Apt. 4</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 5</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 6</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 7</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 8</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 9</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 10</td></tr>";
+ echo "<tr><td colspan='2' height='18'>Apt. 11</td></tr></table></td><td>";
+ monat($day_nrp,$days_monthp,$monthp,$yearp,$titlep,"p");
+ echo "</td><td>";
+ monat($day_nr,$days_month,$month,$year,$title);
+ echo "</td><td>";
+ monat($day_nrn,$days_monthn,$monthn,$yearn,$titlen,"n");
+ echo "</td></tr></table>\n";
+
+ echo "<form action=\"".$_SERVER['PHP_SELF'] ."\" method=\"post\" enctype=\"application/x-www-form-urlencoded\" name=\"form_w\">";
+ echo "<p><input class=\"button\" type=\"submit\" name=\"sub\" value=\"<\" title='mon-1'>";
+ echo " ";
+ echo "<input class=\"button\" type=\"submit\" name=\"sub\" value=\">\" title='mon+1'></p>\n";
+ echo "<input type=\"hidden\" name=\"mon\" value=\"$month\">";
+ echo "<input type=\"hidden\" name=\"yr\" value=\"$year\">";
+ echo "</form>";
+ echo "</div>";
+
+?>
+</body>
+</html>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/test/ldap_test.php Thu Sep 12 09:04:56 2013 +0200
@@ -0,0 +1,133 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer - Fritz-Haber-Institut
+ * @copyright 08/2013
+ *
+ * LDAP Test
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+$ldaphost = "ldap.rz-berlin.mpg.de"; // Ihr ldap servers
+$ldapport = 389; // Die Portnummer ihres ldap servers
+
+echo "<p>Test Verbindung zu LDAP</p>";
+// Verbindung zu LDAP
+ $ldapconn = ldap_connect( $ldaphost, $ldapport )
+ or die( "Keine Verbindung zu {$ldaphost} möglich" );
+
+if ($ldapconn)
+{
+ echo "Verbindung zu LDAP erfolgreich -> $ldapconn<br />";
+ $login = $_POST["login"];
+ $log = $_POST["log"];
+?>
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+ <head>
+ <!-- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> -->
+ <meta http-equiv="content-type" content="text/html; charset=utf-8" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" />
+
+ <title>LDAP + fhiiqm</title>
+ </head>
+
+ <body onload="document.flogin.user.focus();">
+<?php
+
+ if (!$log)
+ {
+ include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/form/login_form.inc.php");
+ }
+ else
+ {
+
+// $ldaprdn = "cn=admin,dc=rz-berlin,dc=mpg,dc=de";
+// $ldappwd = 'ooboot';
+ $ldaprdn = "uid=" . $log["user"].",ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ $ldappwd = $log["pass"];
+ echo "rdn = $ldaprdn<br />";
+ ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
+ ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
+ $ldapbind = @ldap_bind($ldapconn, $ldaprdn, $ldappwd);
+ // $ldapbind = @ldap_bind($ldapconn);
+
+ $base="ou=people,dc=ppb,dc=rz-berlin,dc=mpg,dc=de";
+ if ($ldapbind)
+ {
+ echo "<p>Authentifizierung erfolgreich!</p>";
+ // Enable to show everything
+ $filter = "(sn=*)";
+ $afields = array ("uid","cn","givenName","sn","title","userPassword","mail");
+ $afieldsort = array ("uid","givenName","sn");
+ // search active directory
+ if (!($search=@ldap_search($ldapconn,$base,$filter,$afields))) {
+ die("Unable to search ldap server");
+ }
+ foreach ($afieldsort as $esort)
+ {
+ if (in_array($esort, $afields)) { // making sure we don't accidentally try to sort against an inexisting field
+ ldap_sort($ldapconn, $search, $esort);
+ }
+ }
+ // Find out what we can see
+ $number_returned = ldap_count_entries($ldapconn,$search);
+ $info = ldap_get_entries($ldapconn, $search);
+
+ //Number of hits
+ echo "<p>number of entries " . $number_returned . $newline ."</p>";
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+
+ echo "<div align='center'>\n";
+ echo "<table border='0' cellspacing='2' cellpadding='2'>\n
+ <tr bgcolor='#68ACBF'><th>sn</th><th>givenName</th><th>cn</th><th>title</th><th>uid</th><th>userPassword</th><th>mail</th></tr>\n";
+ for ($i=0; $i<$info["count"]; $i++)
+ {
+// if ($info[$i]["uid"][0] == $log["user"])
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='" . $bg . "'>";
+ echo "<td>". $i. " ".$info[$i]["sn"][0]."</td>";
+ echo "<td>". $info[$i]["givenname"][0]."</td>";
+ echo "<td>". $info[$i]["cn"][0]."</td>";
+ echo "<td>". $info[$i]["title"][0]."</td>";
+ echo "<td>". $info[$i]["uid"][0]."</td>";
+ echo "<td>". $info[$i]["userpassword"][0]."</td>";
+ echo "<td>". $info[$i]["mail"][0]."</td>";
+ echo "</tr>\n";
+ }
+ }
+ echo "</table>";
+ echo "</div>\n<br /><br />";
+// ldap_close($ldapconn);
+/*
+ //LDAP-Einträge - Test
+ include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/func_lib.inc.php");
+ $sn = "Kändler";
+ $gn = "Jörn";
+ $title = "Dr.";
+ $roomnr = "A 2.06";
+ $tel = array("3150", "3153 FAX");
+ $mail = null;
+ $dep = "VW";
+ $ag = array("Verwaltung VL/AdGf");
+ $success = ldap_replace($sn,$gn,$title,$roomnr,$tel,$mail,$dep,$ag);
+ $gn = utf8_encode($gn);
+ $sn = utf8_encode($sn);
+ if ($success) echo "<p>Hurra, Daten fuer user '$gn $sn' wurden in LDAP eingetragen!</p>";
+ else echo "<p>LDAP-Aktualisierung fuer user '$gn $sn' ist leider fehlgeschlagen. :-(</p>";
+*/
+ }
+ }
+}
+else echo "Verbindung zu LDAP failed -> $ldapconn";
+
+
+
+?>
+</body>
+</html>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/test/ma_tel_flist_dbma.php Thu Sep 12 09:04:56 2013 +0200
@@ -0,0 +1,294 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer - Fritz-Haber-Institut
+ * @copyright 08/2013
+ *
+ * Telefonliste ohne Anmeldung
+ *
+ * $_GET["e"] = 1, ='editieren', muss gesetzt sein
+ *
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ if (isset($_GET["i"]) && $_GET["i"]) $edit = $_GET["i"]; // wegen tab_column, "i" als "e" missbraucht -> editieren ermoeglichen
+ if (!$edit) $edit = $_GET["e"];
+ if (!$edit) $edit = $_POST["e"];
+ if (isset($edit) && $edit)
+ {
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]."?e=$edit");
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+// print_r ($_SESSION); echo "<br />";
+ }
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+
+ <title>MA/O-Telefonliste</title>
+</head>
+
+<body onload="document.ffilter.filter.focus();">
+
+<?php
+ if (isset($edit) && $edit)
+ {
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n";
+ }
+
+ // Felder, nach denen gefiltert werden kann
+ $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Arbeitsgruppe",7=>"Telefon/Fax",9=>"Haus", 10=>"Raum");
+// $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr");
+ $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"ag",7=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr");
+
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ if (!isset($sort) && !$sort) $sort = $_POST["s"];
+
+ $dir = $_GET["d"]; // Sortierrichtung
+ if (!isset($dir) && !$dir) $dir = $_POST["d"];
+
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
+
+ $filter = $_POST["filter"];
+ if (!isset($filter) && !$filter) $filter = $_GET["b"];
+
+ $subf = $_POST["subf"]; // submit
+
+ if (!isset($fnum) || !$fnum) $fnum = 1;
+ if (!isset($filter) || !$filter) $filter = "";
+ if (!isset($sort) || !$sort) $sort = 2; // Name
+ if (!$dir || $dir < "!") $dir = "";
+// print_r ($_REQUEST); echo "<br /><br />";
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+
+ $dbc2 = new dbconnection('mitarbeiter');
+/*
+ $sql = "SELECT m.persknr, TRIM(nachname) as name, vorname, titel, abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email
+ FROM Mitarbeiter m LEFT OUTER JOIN
+ Abteilung a ON m.abt_tel=a.abt_ID LEFT OUTER JOIN
+ MA_Telefon mt ON m.persknr=mt.persknr LEFT OUTER JOIN
+ Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN
+ Raum r ON t.raum_ID = r.raum_ID
+ WHERE aktiv>0 AND (m.abt_tel <> 7 OR m.abt_tel IS NULL)
+ UNION
+ SELECT m.persknr, TRIM(nachname) as name, vorname, titel, IFNULL(rag_bez,'INF') as abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email
+ FROM Mitarbeiter m LEFT OUTER JOIN
+ MA_Telefon mt ON m.persknr=mt.persknr INNER JOIN
+ Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN
+ Raum r ON t.raum_ID = r.raum_ID LEFT OUTER JOIN
+ MA_RaumArbGruppe ma ON m.persknr=ma.persknr LEFT OUTER JOIN
+ RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID
+ WHERE aktiv>0 AND m.abt_tel=7";
+*/
+// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list";
+// Raum zu Mitarbeiter und nicht zu Telefon
+ if ($edit) // auch ehemalige MA
+// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list";
+ $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ag
+ WHERE 1=1";
+ else
+// $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ma_raum";
+ $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv
+ FROM v_tel_list_ag WHERE aktiv > 0";
+ if ($filter)
+ {
+ if ($fnum > 3)
+ $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'%$filter%'";
+ else
+ $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'$filter%'";
+ }
+ else $wher = "";
+ // intern/extern
+ $ip=getenv("REMOTE_ADDR");
+ $ippart=explode(".",$ip);
+ if (($ippart[0] == 141 && $ippart[1] == 14) || ($ippart[0] == 172 && $ippart[1] == 16))
+ $wip = "";
+ else
+ $wip = " AND public=1 ";
+
+ if ($sort == 2) $so = "name COLLATE latin1_general_ci $dir, 1, 3, 5, 6";
+// if ($sort == 2) $sort = "2, 3, 5";
+ elseif ($sort == 5) $so = "5 $dir, 6, name COLLATE latin1_general_ci, 1, 3";
+// if ($sort == 5) $sort = "5, 2, 3";
+ else $so = "$sort $dir ";
+ if ($so) $ord = " ORDER BY $so, IFNULL(sort,99), 7 "; // immer nach Telefon-Nr als 2.
+
+ $sql .= $wher . $wip . $ord;
+// echo "sql = $sql<br /><br />";
+ $result = $dbc2 ->queryObjectArray($sql);
+
+ if ($result)
+ {
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige
+
+ echo "<div align='center'>\n";
+ echo "<p><b>Mitarbeiter/Objekte - Telefonliste</b></p>\n";
+
+ echo "<table border='0' cellspacing='0'>\n";
+ echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />'
+ können Sie nach allen Spalten auf- bzw. absteigend sortieren</td></tr>
+ <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach allen Spalten der Liste</td></tr>";
+ if ($edit)
+ {
+ echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</td></tr>";
+ echo "<tr><td class='bigger'><span style='color: orange; font-size: 1em;'>Orange</span> <span style='background-color: #FFCC88; font-size: 1em;'>hinterlegte</span> Zeilen markieren ausgeschiedenen Mitarbeiter</td></tr>";
+ }
+ echo "<tr><td class='bigger'><span style='color: red; font-size: 1em;'>Rote</span> Telefon-/Fax-Nummern sind nur intern sichtbar</td></tr>";
+ echo "</table>\n";
+
+ echo "</div><p> <a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n<div align='center'>\n";
+ if (isset($fnum) && $fnum>1 && !$filter && !$subf)
+ {
+ // Formular anzeigen fuer Filterbegriff
+ $text = $fields[$fnum];
+ $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
+ echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
+ echo "<input type='hidden' name='s' value='$sort'>";
+ echo "<input type='hidden' name='d' value='$dir'>";
+ echo "<input type='hidden' name='f' value='$fnum'>";
+ echo "<input type='hidden' name='e' value='$edit'>";
+ echo "<table width=\"45%\" border=\"0\">\n";
+ echo "<tr><td>filtern nach $text: </td>";
+ echo "<td><input id='filter' name='filter' type=\"text\" size=\"30\" maxlength=\"30\" value=\"$filter\"/></td>";
+/*
+ echo "<td>Zeilen/Seite? <select name='z'>\n";
+ foreach ($azeil as $key=>$val)
+ {
+ if ($key == $zeil) $select = "selected"; else $select = "";
+ echo "<option $select value='$key'>$val</option>\n";
+ }
+ echo "</select></td>\n";
+*/
+ echo "<td><input class=\"button\" type=\"hidden\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
+ echo "</form>\n";
+ echo "<p> </p>\n";
+ }
+
+ // Schnellsuche Namen
+ echo "<p>";
+ for ($j=65; $j<91; $j++)
+ {
+ echo "<a href='". $_SERVER["PHP_SELF"] . "?e=$edit&f=2&b=". chr($j)."' target=\"_self\" title=\"Telefonliste\" class=\"sc\">".chr($j)." </a>";
+ }
+ echo "</p>\n";
+ echo "<table width='75%'>\n";
+
+ if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
+
+ // Listenkopf generieren
+ echo "<tr bgcolor='#68ACBF'>";
+ tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(6,"Arbeitsgruppe",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit);
+ tab_column(7,"Telefon/Fax",$sort,$dir,7,$fnum,$filter,$start,$zeil,$edit);
+ if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
+ echo "<th> </th>";
+ echo "</tr>\n";
+ foreach ($result as $row)
+ {
+ if ($row->persknr != $vpnr)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ $titel = ($row->titel)? ", $row->titel" : "" ;
+ $email = ($row->email)? "<a href='mailto:$row->email'>$row->name$titel</a>" : "$row->name$titel";
+ if ($row->aktiv == 0) $class = " class='bgmark'"; else $class="";
+ echo "<tr$class bgcolor='" . $bg . "'><td>$email</td>";
+ echo "<td>$row->vorname</td>";
+ echo "<td>$row->abt_name</td>";
+ echo "<td>$row->ag</td>";
+ // echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>";
+ $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
+ $rot = ($row->public)? "" : " class=\"red\"";
+ echo "<td>$row->geb_ID</td>";
+ echo "<td>$row->raum_nr</td>";
+ if ($row->sort == 1)
+ echo "<td$rot><b>$row->telefon_nr</b> $ttyp</td>";
+ else
+ echo "<td$rot>$row->telefon_nr $ttyp</td>";
+ if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
+ echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
+ echo "</tr>\n";
+ }
+ else
+ {
+ if ($vabt != $row->abt_name) $abt = $row->abt_name;
+ else $abt = ' ';
+ if ($vag != $row->ag) $ag = $row->ag;
+ else $ag = ' ';
+ if ($vtel != $row->telefon_nr)
+ {
+ $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
+ $rot = ($row->public)? "" : " class=\"red\"";
+ $tel = $row->telefon_nr;
+ }
+ else
+ {
+ $tel = ' ';
+ $ttyp = '';
+ }
+ echo "<tr bgcolor='" . $bg . "'><td colspan='2'> </td>";
+ echo "<td>$abt</td>";
+ echo "<td>$ag</td>";
+ echo "<td> </td>";
+ echo "<td> </td>";
+ if ($row->sort == 1)
+ echo "<td$rot><b>$tel</b> $ttyp</td>";
+ else
+ echo "<td$rot>$tel $ttyp</td>";
+ if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
+ echo "<td> </td>";
+ echo "</tr>\n";
+ }
+ $vpnr = $row->persknr;
+ $vabt = $row->abt_name;
+ $vag = $row->ag;
+ $vtel = $row->telefon_nr;
+ }
+ echo "</table></div>\n";
+ echo "<p> <a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n";
+
+ }
+ else
+ {
+ echo "<div align=center>";
+ if ($dbc -> error)
+ echo "error: " . $dbc -> error . "<br />\n";
+ else
+ {
+ echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />";
+ echo " <a href=\"" . $_SERVER["PHP_SELF"] . "?e=$edit\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n";
+ }
+ echo "</div>";
+ }
+
+?>
+</body>
+</html>
\ No newline at end of file
--- a/fhiiqm/vertrag_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/vertrag_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,466 +1,470 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 03/2013
- *
- * INSERT/UPDATE/DELETE Vertragsdaten
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ("inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("vr",$_SESSION["recht"]) && !in_array("ve",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
-
- <title>Aktualisieren Vertragsdaten</title>
-
- <script type="text/javascript">
- //<!--
- var counter = 0;
- var limit = 99;
- function addInput(divId,anz){
- if (counter == limit) {
- alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
- }
- else
- {
- var cdiv = document.createElement('div');
- var idl = "cbl_" + anz;
- cdiv.innerHTML = "<span></span>Dok-Name <input name='vertrag[cfname][]' type='text' size='50' maxlength='50' value='' />";
- cdiv.innerHTML += " Schlagwort <input type='text' name='vertrag[swort][]' size='30' maxlength='50' value='' />";
- cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
- //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
- cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/>";
- cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
- cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='vfile[]' size='50' maxlength='50' value='' />";
- document.getElementById(divId).appendChild(cdiv);
- var delcb = document.getElementById('del');
- delcb.id = "del_" + anz;
- delcb.style.display = 'none';
- var lcb = document.getElementById('lb');
- lcb.id = "lb_" + anz;
- lcb.setAttribute("for", delcb.id);
- lcb.style.display = 'none';
- counter++;
- }
- }
- function markdelInput(divId,anz){
- for (i=1; i<anz; i++)
- {
- var id = "del_" + i;
- var delcb = document.getElementById(id);
- delcb.style.display = 'inline';
- var idl = "lb_" + i;
- var lcb = document.getElementById(idl);
- lcb.style.display = 'inline';
- /*
- var newlabel = document.createElement("Label");
- var idl = "cbl_" + i;
- newlabel.setAttribute("for",id);
- newlabel.innerHTML = " löschen?";
- document.getElementById(idl).appendChild(newlabel);
- */
- }
- }
- function delInput(divId,anz){
-
- var kn = document.getElementById(divId);
- while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SPAN" && kn.lastChild.nodeName != "A")
- {
- var knc = kn.lastChild;
- document.getElementById(divId).removeChild(knc);
- }
- if (kn.lastChild.nodeName == "SPAN") document.getElementById(divId).removeChild(kn.lastChild);
- }
- //-->
- </script>
-</head>
-
-<body>
-
- <script>
- $(document).ready(function() {
- $("#bez").focus();
- $("#bdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '1990:2030',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#edat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '1990:2030',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- });
- </script>
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"img/document_mark_as_final.png\" border=\"0\" alt=\"Vertragsdaten bearbeiten\" title=\"Vertragsdaten bearbeiten\"/></div>\n";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- $dbc = new dbconnection();
-
- $cid = $_GET["uid"];
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = 20; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- $teil = $_GET["t"]; // t = 2 zu Vertragsliste Teil 2 zurueck
- $mfile = $_GET["g"]; // Multifile = mehrere Vertragsdokumente moeglich
- if ($teil == 2) $tlist = "vertrag_flist12.php"; else $tlist = "vertrag_flist1.php";
- // $_GET-Parameter zurück zur Vertragliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil&g=$mfile";
-
- $ok = $_POST["ok"];
- $sub = $_POST["edit"];
- $del = $_POST["del"];
- $vtr = $_POST["vertrag"];
- if (!$vtr['okn']) $ok=false;
-
-//print_r($vtr); echo "cid = $cid<br /><br />";
-//print_r($_FILES); echo "<br /><br />";
-
- if (!$ok && ((!$sub && !$del) || $sub || $del))
- {
- if (!$sub && !$del)
- {
- $sql = "SELECT contract_ID,contract_name,contract_s,contract_l,vtyp_ID,contract_begin,contract_end,
- contract_autoend,contract_mon_notice,contract_file,Bemerkung,email_send
- FROM fhiiqm.Vertrag WHERE contract_ID = $cid";
- if ($result = $dbc ->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $vtr['cname'] = $row->contract_name;
-// $vtr['cshort'] = $row->contract_s;
- $vtr['clong'] = $row->contract_l;
- $vtr['vtyp'] = $row->vtyp_ID;
- $vtr['bdat'] = $row->contract_begin;
- $vtr['edat'] = $row->contract_end;
- $vtr['cautoend']= $row->contract_autoend;
- $vtr['cnot'] = $row->contract_mon_notice;
-// $vtr['cfname'][0] = $row->contract_file;
- $vtr['cbem'] = $row->Bemerkung;
- $vtr['email'] = $row->email_send;
- }
- }
- // Bearbeiter
- $sql = "SELECT persknr FROM Vertrag_Bearbeiter WHERE contract_ID = $cid";
- if ($result = $dbc ->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $vtr['cpers'][] = $row->persknr;
- }
- }
- // Partner
- $sql = "SELECT part_ID FROM Vertrag_Partner WHERE contract_ID = $cid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $vtr['partid'] = $row->part_ID;
- }
- }
- // Produkt
- $sql = "SELECT produkt_ID FROM Produkt_Vertrag WHERE contract_ID = $cid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $vtr['prodid'] = $row->produkt_ID;
- }
- }
- // Kosten
- if ($vtr['edat'])
- {
- $jahr = new DateTime($vtr['edat']);
- $ejahr = $jahr->format('Y');
- }
- elseif ($vtr["cautoend"] && !$vtr['edat']) // automatische Vertragsverlaengerung und kein Endjahr angegeben
- $ejahr = date("Y");
- else
- {
- $jahr = new DateTime($vtr['bdat']); // Kosten nur im Startjahr
- $ejahr = $jahr->format('Y');
- }
- if ($vtr['bdat'])
- {
- $jahr = new DateTime($vtr['bdat']);
- $bjahr = $jahr->format('Y');
- }
- for ($i=(int)$bjahr; $i< (int)$ejahr +1; $i++)
- { $ayear[] = $i; }
- $sql = "SELECT k_year, kosten FROM Vertrag_Kosten WHERE contract_ID = $cid ORDER BY k_year ";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $j = array_search($row->k_year,$ayear);
- if ( $j > -1 )
- $vtr['kost'][$j] = str_replace('.',',',$row->kosten);
- }
- }
- // Dokumente
- $sql = "SELECT cf_filename, cf_schlagwort FROM Vertrag_File WHERE contract_ID = $cid ORDER BY cf_ID";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $vtr['cfname'][] = $row->cf_filename;
- $vtr['swort'][] = $row->cf_schlagwort;
- }
- }
- }
-
- include_once("form/vertragmf_form.inc.php");
-
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?<br>
- erst wenn Haken gesetzt, Upload-Files wählen!";
- elseif ($del)
- $frage = "Vertrag wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked";
- echo "></td>\n</tr>\n";
- }
-
- if (!is_null($_SESSION["recht"]) && in_array("ve",$_SESSION["recht"]))
- {
- echo "<tr>\n";
- echo "
- <td> </td>
- <td><input class=\"button\" type=\"submit\" value=\"eintragen\" name=\"edit\" title=\"eintragen\" />";
- if ($cid)
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo "</td>\n</tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("ve",$_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"$tlist?$getp\" target=\"_self\" title=\"Vertragsliste\">« zur Vertragsliste</a></p>\n";
- echo "</form>\n";
-
- }
- elseif ($ok && $sub)
- {
- echo "<div align='center'>\n";
- //daten speichern
-
- $vtr['cname'] = substr($vtr['cname'],0,50);
-// $vtr['cshort'] = substr($vtr['cshort'],0,50);
- $vtr['clong'] = substr($vtr['clong'],0,100);
- if ($vtr['vtyp']== -1 || !(is_numeric($vtr['vtyp']))) $vtr['vtyp'] = null;
- if ($vtr["bdat"] == "") $vtr["bdat"] = null;
- if ($vtr["edat"] == "") $vtr["edat"] = null;
- if (!is_numeric($vtr['cnot'])) $vtr['cnot'] = null;
- if ($vtr['cbem']) $vtr['cbem'] = substr($vtr['cbem'],0,500); else $vtr['cbem']=null;
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
- include_once ("inc/file_upload.inc.php");
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- // contract_file = ?, $cfile
- if ($cid)
- {
- $stmt -> prepare("UPDATE fhiiqm.Vertrag SET
- contract_name = ?,
- contract_l = ?,
- vtyp_ID = ?,
- contract_begin = ?,
- contract_end = ?,
- contract_autoend = ?,
- contract_mon_notice = ?,
- Bemerkung = ?,
- email_send = ?
- WHERE contract_ID = $cid") ;
- $stmt -> bind_param('ssissiisi',$vtr["cname"],$vtr["clong"],$vtr['vtyp'],$vtr['bdat'],$vtr['edat'],$vtr['cautoend'],$vtr['cnot'],$vtr['cbem'],$vtr["email"]);
- $retv = $stmt -> execute();
- if (!$retv) echo "UPDATE Vertrag, error: " . $stmt->errno . " - ". $stmt->error ."<br />\n";
- }
- else
- {
- $stmt -> prepare("INSERT INTO Vertrag (contract_name, contract_l,vtyp_ID,contract_begin, contract_end, contract_autoend,
- contract_mon_notice, bemerkung,email_send)
- VALUES(?,?,?,?,?,?,?,?,?)");
- $stmt -> bind_param('ssissiisi',$vtr["cname"],$vtr["clong"],$vtr['vtyp'],$vtr['bdat'],$vtr['edat'],$vtr['cautoend'],$vtr['cnot'],$vtr['cbem'],$vtr["email"]);
- $retv = $stmt -> execute();
- if (!$retv || $stmt->error) echo "INSERT Vertrag, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
- if ($retv)
- { // INSERT o.k.
- // contract_ID ermitteln
- $cid = $dbc -> insertId();
- }
- }
- }
- if ($cid)
- {
- $len = strlen($cid)+1;
- // alte Namen Vertragsdocument
- $sql = "SELECT cf_filename FROM Vertrag_File WHERE contract_ID = $cid ORDER BY cf_ID";
- if ($res = $dbc -> queryObjectArray($sql))
- foreach ($res as $row)
- $vfile_old[] = $row->cf_filename;
-
- // zu loeschende docs auf Server
- foreach ($vtr['cfname'] as $key => &$val)
- {
- if (isset($vtr['del'][$key]) && $vtr['del'][$key])
- {
- $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$val); // Loeschen altes File auf Server
- $val = null;
- }
- }
- // upload File, wenn vorhanden
- $retf = 1;
- if (isset($_FILES) && is_array($_FILES))
- {
- foreach ($vtr['cfname'] as $key => &$filena)
- {
- $filena = gen_filename($filena,$_FILES['vfile']['name'][$key],$cid,0);
- if ($_FILES["vfile"]["error"][$key] == UPLOAD_ERR_NO_FILE)
- {
- if ($filena > "!" && $cid."_".$filena != $vfile_old[$key])
- {
- if (substr($filena,0,$len) != "$cid_") $filenam = $cid . "_" . $filena; else $filenam = $filena;
- $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,$filenam,"upd",$vfile_old[$key]); // Umbenennen alte Datei
- }
- elseif (!$filena || $filena == '')
- $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$vfile_old[$key]); // Loeschen alte Datei
- else //kein Upload, keine Dateinamenaenderung
- $retf = 1;
- }
- if ($_FILES["vfile"]["error"][$key] == UPLOAD_ERR_OK)
- {
- if (isset($vfile_old[$key]) && $filena > "!" && $cid."_".$filena != $vfile_old[$key])
- {
- $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$vfile_old[$key]); // Loeschen alte Datei
- }
- }
- }
- if (isset($_FILES['vfile']['error']) && is_array($_FILES['vfile']['error']) && in_array(0,$_FILES['vfile']['error']))
- {
- $ret = upload_multif("vfile", $vtr['cfname'], $cid, $dir="documents");
- if ($ret) echo "<p class='green'><b>Dateien zu ID '$cid' wurden erfolgreich hochgeladen.</b></p>\n";
- else echo "<p class='red'><b>Upload für einige Dateien zu ID '$cid' ist fehlgeschlagen.</b></p>\n";
- }
- else $ret = 1;
- }
-
- if ($retv && $ret && $retf)
- {
- // DELETE, INSERT n:m Tabellen
- include ("inc/vertragtab_ins.inc.php");
- }
-
- if ($retv && $retb && $retp && $retd && $retk && $retf && $retl)
- {//Eingabe Daten, Upload File erfolgreich
- echo "<p class='green'><b>Vertragsdaten zu ID '$cid' wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen gespeicherte Vertragsdaten
- include ("inc/vertrag_dat_show.inc.php");
- }
- else echo "retv=$retv,
- retb=$retb,
- retp=$retp,
- retd=$retd,
- retk=$retk,
- retf=$retf,
- retl=$retl<br /><br />";
- }
- }
- elseif ($ok && $del)
- {
- // DELETE aus Tab Vertrag und abhaengigen Tabellen
- echo "<div align='center'>\n";
-
- // alte Namen Vertragsdocument
- $sql = "SELECT cf_filename FROM Vertrag_File WHERE contract_ID = $cid ORDER BY cf_ID";
- if ($res = $dbc -> queryObjectArray($sql))
- foreach ($res as $row)
- $vfile_old[] = $row->cf_filename;
- $sql = "DELETE FROM Vertrag WHERE contract_ID = $cid";
- $retvd = $dbc -> execute($sql);
- if ($retvd)
- {
- foreach ($vtr['cfname'] as $key => $filename)
- $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$vfile_old[$key]); // Loeschen alte Datei
- if ($retdf) echo "<p class='green'><b>Vertragsdokumente zu ID '$cid' wurde gelöscht.</b></p>\n";
- echo "<p class='green'><b>Vertragsdaten zu ID '$cid' wurden gelöscht.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen geloeschter Vertragsdaten
- include ("inc/vertrag_dat_show.inc.php");
- }
- }
- if ($ok && ($sub || $del))
- {
-/*
- // nicht mehr notwendige Dateien auf Server löschen
- if (count($vtr['cfname']) != count($vfile_old))
- {
- foreach ($vfile_old as $key => $val)
- {
-print_r($vtr['cfname']); echo "$val in delete<br /><br />";
- $valk = substr($val,$len);
- if (!in_array($valk,$vtr['cfname']))
- $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$val); // Loeschen alte Datei
- }
- }
-print_r($vtr['cfname']); echo "nach delete?<br /><br />";
-*/
- echo "</div><br /><br />\n";
- echo "<p class='sc'> <a href=\"$tlist?$getp\" target=\"_self\" title=\"Vertragsliste\">Zurück zur Vertragsliste</a></p>\n";
- echo "<p class='sc'> <a href=\"vertrag_ed.php\" target=\"_self\" title=\"Vertrag erfassen\">Weiteren Vertrag erfassen</a></p>\n";
- }
-
-?>
-
-</body>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 03/2013
+ *
+ * INSERT/UPDATE/DELETE Vertragsdaten
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ("inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("vr",$_SESSION["recht"]) && !in_array("ve",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+
+ <title>Aktualisieren Vertragsdaten</title>
+
+ <script type="text/javascript">
+ //<!--
+ var counter = 0;
+ var limit = 99;
+ function addInput(divId,anz){
+ if (counter == limit) {
+ alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
+ }
+ else
+ {
+ var cdiv = document.createElement('div');
+ var idl = "cbl_" + anz;
+ cdiv.innerHTML = "<span></span>Dok-Name <input name='vertrag[cfname][]' type='text' size='50' maxlength='50' value='' />";
+ cdiv.innerHTML += " Schlagwort <input type='text' name='vertrag[swort][]' size='30' maxlength='50' value='' />";
+ cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
+ //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
+ cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/>";
+ cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
+ cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='vfile[]' size='50' maxlength='50' value='' />";
+ document.getElementById(divId).appendChild(cdiv);
+ var delcb = document.getElementById('del');
+ delcb.id = "del_" + anz;
+ delcb.style.display = 'none';
+ var lcb = document.getElementById('lb');
+ lcb.id = "lb_" + anz;
+ lcb.setAttribute("for", delcb.id);
+ lcb.style.display = 'none';
+ counter++;
+ }
+ }
+ function markdelInput(divId,anz){
+ for (i=1; i<anz; i++)
+ {
+ var id = "del_" + i;
+ var delcb = document.getElementById(id);
+ delcb.style.display = 'inline';
+ var idl = "lb_" + i;
+ var lcb = document.getElementById(idl);
+ lcb.style.display = 'inline';
+ /*
+ var newlabel = document.createElement("Label");
+ var idl = "cbl_" + i;
+ newlabel.setAttribute("for",id);
+ newlabel.innerHTML = " löschen?";
+ document.getElementById(idl).appendChild(newlabel);
+ */
+ }
+ }
+ function delInput(divId,anz){
+
+ var kn = document.getElementById(divId);
+ while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SPAN" && kn.lastChild.nodeName != "A")
+ {
+ var knc = kn.lastChild;
+ document.getElementById(divId).removeChild(knc);
+ }
+ if (kn.lastChild.nodeName == "SPAN") document.getElementById(divId).removeChild(kn.lastChild);
+ }
+ //-->
+ </script>
+</head>
+
+<body>
+
+ <script>
+ $(document).ready(function() {
+ $("#bez").focus();
+ $("#bdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '1990:2030',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#edat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '1990:2030',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ });
+ </script>
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"img/document_mark_as_final.png\" border=\"0\" alt=\"Vertragsdaten bearbeiten\" title=\"Vertragsdaten bearbeiten\"/></div>\n";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ $dbc = new dbconnection();
+
+ $cid = $_GET["uid"];
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 20; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ $teil = $_GET["t"]; // t = 2 zu Vertragsliste Teil 2 zurueck
+ $mfile = $_GET["g"]; // Multifile = mehrere Vertragsdokumente moeglich
+ if ($teil == 2) $tlist = "vertrag_flist12.php"; else $tlist = "vertrag_flist1.php";
+ // $_GET-Parameter zurück zur Vertragliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil&g=$mfile";
+
+ $ok = $_POST["ok"];
+ $sub = $_POST["edit"];
+ $del = $_POST["del"];
+ $vtr = $_POST["vertrag"];
+ if (!$vtr['okn']) $ok=false;
+
+//print_r($vtr); echo "cid = $cid<br /><br />";
+//print_r($_FILES); echo "<br /><br />";
+
+ if (!$ok && ((!$sub && !$del) || $sub || $del))
+ {
+ if (!$sub && !$del)
+ {
+ $sql = "SELECT contract_ID,contract_name,contract_s,contract_l,vtyp_ID,contract_begin,contract_end,
+ contract_autoend,contract_mon_notice,contract_file,Bemerkung,email_send,timestamp,userid
+ FROM fhiiqm.Vertrag WHERE contract_ID = $cid";
+ if ($result = $dbc ->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $vtr['cname'] = $row->contract_name;
+// $vtr['cshort'] = $row->contract_s;
+ $vtr['clong'] = $row->contract_l;
+ $vtr['vtyp'] = $row->vtyp_ID;
+ $vtr['bdat'] = $row->contract_begin;
+ $vtr['edat'] = $row->contract_end;
+ $vtr['cautoend']= $row->contract_autoend;
+ $vtr['cnot'] = $row->contract_mon_notice;
+// $vtr['cfname'][0] = $row->contract_file;
+ $vtr['cbem'] = $row->Bemerkung;
+ $vtr['email'] = $row->email_send;
+ $vtr['tstmp'] = $row->timestamp;
+ $vtr['uid'] = $row->userid;
+ }
+ }
+ // Bearbeiter
+ $sql = "SELECT persknr FROM Vertrag_Bearbeiter WHERE contract_ID = $cid";
+ if ($result = $dbc ->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $vtr['cpers'][] = $row->persknr;
+ }
+ }
+ // Partner
+ $sql = "SELECT part_ID FROM Vertrag_Partner WHERE contract_ID = $cid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $vtr['partid'] = $row->part_ID;
+ }
+ }
+ // Produkt
+ $sql = "SELECT produkt_ID FROM Produkt_Vertrag WHERE contract_ID = $cid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $vtr['prodid'] = $row->produkt_ID;
+ }
+ }
+ // Kosten
+ if ($vtr['edat'])
+ {
+ $jahr = new DateTime($vtr['edat']);
+ $ejahr = $jahr->format('Y');
+ }
+ elseif ($vtr["cautoend"] && !$vtr['edat']) // automatische Vertragsverlaengerung und kein Endjahr angegeben
+ $ejahr = date("Y");
+ else
+ {
+ $jahr = new DateTime($vtr['bdat']); // Kosten nur im Startjahr
+ $ejahr = $jahr->format('Y');
+ }
+ if ($vtr['bdat'])
+ {
+ $jahr = new DateTime($vtr['bdat']);
+ $bjahr = $jahr->format('Y');
+ }
+ for ($i=(int)$bjahr; $i< (int)$ejahr +1; $i++)
+ { $ayear[] = $i; }
+ $sql = "SELECT k_year, kosten FROM Vertrag_Kosten WHERE contract_ID = $cid ORDER BY k_year ";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $j = array_search($row->k_year,$ayear);
+ if ( $j > -1 )
+ $vtr['kost'][$j] = str_replace('.',',',$row->kosten);
+ }
+ }
+ // Dokumente
+ $sql = "SELECT cf_filename, cf_schlagwort FROM Vertrag_File WHERE contract_ID = $cid ORDER BY cf_ID";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $vtr['cfname'][] = $row->cf_filename;
+ $vtr['swort'][] = $row->cf_schlagwort;
+ }
+ }
+ }
+
+ include_once("form/vertragmf_form.inc.php");
+
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?<br>
+ erst wenn Haken gesetzt, Upload-Files wählen!";
+ elseif ($del)
+ $frage = "Vertrag wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked";
+ echo "></td>\n</tr>\n";
+ }
+
+ if (!is_null($_SESSION["recht"]) && in_array("ve",$_SESSION["recht"]))
+ {
+ echo "<tr>\n";
+ echo "
+ <td> </td>
+ <td><input class=\"button\" type=\"submit\" value=\"eintragen\" name=\"edit\" title=\"eintragen\" />";
+ if ($cid)
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo "</td>\n</tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("ve",$_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"$tlist?$getp\" target=\"_self\" title=\"Vertragsliste\">« zur Vertragsliste</a></p>\n";
+ echo "</form>\n";
+
+ }
+ elseif ($ok && $sub)
+ {
+ echo "<div align='center'>\n";
+ //daten speichern
+ $userid = $_SESSION["userid"];
+
+ $vtr['cname'] = substr($vtr['cname'],0,50);
+// $vtr['cshort'] = substr($vtr['cshort'],0,50);
+ $vtr['clong'] = substr($vtr['clong'],0,100);
+ if ($vtr['vtyp']== -1 || !(is_numeric($vtr['vtyp']))) $vtr['vtyp'] = null;
+ if ($vtr["bdat"] == "") $vtr["bdat"] = null;
+ if ($vtr["edat"] == "") $vtr["edat"] = null;
+ if (!is_numeric($vtr['cnot'])) $vtr['cnot'] = null;
+ if ($vtr['cbem']) $vtr['cbem'] = substr($vtr['cbem'],0,500); else $vtr['cbem']=null;
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+ include_once ("inc/file_upload.inc.php");
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ // contract_file = ?, $cfile
+ if ($cid)
+ {
+ $stmt -> prepare("UPDATE fhiiqm.Vertrag SET
+ contract_name = ?,
+ contract_l = ?,
+ vtyp_ID = ?,
+ contract_begin = ?,
+ contract_end = ?,
+ contract_autoend = ?,
+ contract_mon_notice = ?,
+ Bemerkung = ?,
+ email_send = ?,
+ userid = ?
+ WHERE contract_ID = $cid") ;
+ $stmt -> bind_param('ssissiisis',$vtr["cname"],$vtr["clong"],$vtr['vtyp'],$vtr['bdat'],$vtr['edat'],$vtr['cautoend'],$vtr['cnot'],$vtr['cbem'],$vtr["email"],$userid);
+ $retv = $stmt -> execute();
+ if (!$retv) echo "UPDATE Vertrag, error: " . $stmt->errno . " - ". $stmt->error ."<br />\n";
+ }
+ else
+ {
+ $stmt -> prepare("INSERT INTO Vertrag (contract_name, contract_l,vtyp_ID,contract_begin, contract_end, contract_autoend,
+ contract_mon_notice, bemerkung,email_send,userid)
+ VALUES(?,?,?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('ssissiisis',$vtr["cname"],$vtr["clong"],$vtr['vtyp'],$vtr['bdat'],$vtr['edat'],$vtr['cautoend'],$vtr['cnot'],$vtr['cbem'],$vtr["email"],$userid);
+ $retv = $stmt -> execute();
+ if (!$retv || $stmt->error) echo "INSERT Vertrag, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
+ if ($retv)
+ { // INSERT o.k.
+ // contract_ID ermitteln
+ $cid = $dbc -> insertId();
+ }
+ }
+ }
+ if ($cid)
+ {
+ $len = strlen($cid)+1;
+ // alte Namen Vertragsdocument
+ $sql = "SELECT cf_filename FROM Vertrag_File WHERE contract_ID = $cid ORDER BY cf_ID";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ $vfile_old[] = $row->cf_filename;
+
+ // zu loeschende docs auf Server
+ foreach ($vtr['cfname'] as $key => &$val)
+ {
+ if (isset($vtr['del'][$key]) && $vtr['del'][$key])
+ {
+ $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$val); // Loeschen altes File auf Server
+ $val = null;
+ }
+ }
+ // upload File, wenn vorhanden
+ $retf = 1;
+ if (isset($_FILES) && is_array($_FILES))
+ {
+ foreach ($vtr['cfname'] as $key => &$filena)
+ {
+ $filena = gen_filename($filena,$_FILES['vfile']['name'][$key],$cid,0);
+ if ($_FILES["vfile"]["error"][$key] == UPLOAD_ERR_NO_FILE)
+ {
+ if ($filena > "!" && $cid."_".$filena != $vfile_old[$key])
+ {
+ if (substr($filena,0,$len) != "$cid_") $filenam = $cid . "_" . $filena; else $filenam = $filena;
+ $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,$filenam,"upd",$vfile_old[$key]); // Umbenennen alte Datei
+ }
+ elseif (!$filena || $filena == '')
+ $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$vfile_old[$key]); // Loeschen alte Datei
+ else //kein Upload, keine Dateinamenaenderung
+ $retf = 1;
+ }
+ if ($_FILES["vfile"]["error"][$key] == UPLOAD_ERR_OK)
+ {
+ if (isset($vfile_old[$key]) && $filena > "!" && $cid."_".$filena != $vfile_old[$key])
+ {
+ $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$vfile_old[$key]); // Loeschen alte Datei
+ }
+ }
+ }
+ if (isset($_FILES['vfile']['error']) && is_array($_FILES['vfile']['error']) && in_array(0,$_FILES['vfile']['error']))
+ {
+ $ret = upload_multif("vfile", $vtr['cfname'], $cid, $dir="documents");
+ if ($ret) echo "<p class='green'><b>Dateien zu ID '$cid' wurden erfolgreich hochgeladen.</b></p>\n";
+ else echo "<p class='red'><b>Upload für einige Dateien zu ID '$cid' ist fehlgeschlagen.</b></p>\n";
+ }
+ else $ret = 1;
+ }
+
+ if ($retv && $ret && $retf)
+ {
+ // DELETE, INSERT n:m Tabellen
+ include ("inc/vertragtab_ins.inc.php");
+ }
+
+ if ($retv && $retb && $retp && $retd && $retk && $retf && $retl)
+ {//Eingabe Daten, Upload File erfolgreich
+ echo "<p class='green'><b>Vertragsdaten zu ID '$cid' wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen gespeicherte Vertragsdaten
+ include ("inc/vertrag_dat_show.inc.php");
+ }
+ else echo "retv=$retv,
+ retb=$retb,
+ retp=$retp,
+ retd=$retd,
+ retk=$retk,
+ retf=$retf,
+ retl=$retl<br /><br />";
+ }
+ }
+ elseif ($ok && $del)
+ {
+ // DELETE aus Tab Vertrag und abhaengigen Tabellen
+ echo "<div align='center'>\n";
+
+ // alte Namen Vertragsdocument
+ $sql = "SELECT cf_filename FROM Vertrag_File WHERE contract_ID = $cid ORDER BY cf_ID";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ $vfile_old[] = $row->cf_filename;
+ $sql = "DELETE FROM Vertrag WHERE contract_ID = $cid";
+ $retvd = $dbc -> execute($sql);
+ if ($retvd)
+ {
+ foreach ($vtr['cfname'] as $key => $filename)
+ $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$vfile_old[$key]); // Loeschen alte Datei
+ if ($retdf) echo "<p class='green'><b>Vertragsdokumente zu ID '$cid' wurde gelöscht.</b></p>\n";
+ echo "<p class='green'><b>Vertragsdaten zu ID '$cid' wurden gelöscht.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen geloeschter Vertragsdaten
+ include ("inc/vertrag_dat_show.inc.php");
+ }
+ }
+ if ($ok && ($sub || $del))
+ {
+/*
+ // nicht mehr notwendige Dateien auf Server löschen
+ if (count($vtr['cfname']) != count($vfile_old))
+ {
+ foreach ($vfile_old as $key => $val)
+ {
+print_r($vtr['cfname']); echo "$val in delete<br /><br />";
+ $valk = substr($val,$len);
+ if (!in_array($valk,$vtr['cfname']))
+ $retf = $retf && mod_file("/var/www/fhiiqm/documents",$cid,"","del",$val); // Loeschen alte Datei
+ }
+ }
+print_r($vtr['cfname']); echo "nach delete?<br /><br />";
+*/
+ echo "</div><br /><br />\n";
+ echo "<p class='sc'> <a href=\"$tlist?$getp\" target=\"_self\" title=\"Vertragsliste\">Zurück zur Vertragsliste</a></p>\n";
+ echo "<p class='sc'> <a href=\"vertrag_ed.php\" target=\"_self\" title=\"Vertrag erfassen\">Weiteren Vertrag erfassen</a></p>\n";
+ }
+
+?>
+
+</body>
</html>
\ No newline at end of file