Subversion-Projekte lars-tiefland.content-management

Revision

Zur aktuellen Revision | Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
 
3
    //$Id: auspraegung.php 4034 2011-10-25 07:04:23Z tiefland $
4
 
5
    /**
6
     * @author Lars Tiefland <tiefland@weban.de>
7
     * @copyright 2009 Webagentur Niewerth
8
     * @package Content-management
9
     * @version $Rev: 4034 $
10
     * @license propietary
11
     * @filesource
12
     *
13
     */
14
 
15
    /**
16
     * Verwaltet die Ausprägungen der Verzeichnisse und Artikel
17
     * @author Lars Tiefland <tiefland@weban.de>
18
     * @copyright 2009 Webagentur Niewerth
19
     * @package Content-management
20
     */
21
 
22
    require_once "connect2.php";
23
    require_once "Weban_Smarty.class.php";
24
 
25
 
26
    $GLOBALS["ui"] = new Weban_Smarty();
27
 
28
    // ME: Abhängige Ausprägungen?
29
    if ( isset( $web_rechte['online_shop']['directory']['auspr_abhaengigkeiten'] ) )
30
    {
31
        $GLOBALS["ui"]->assign( "auspr_abhaengigkeiten", 1 );
32
        $auspr_abhaengigkeiten = 1;
33
    }
34
    // ME: sollen die Ausprägungen an Unterordner weitervererbt werden können?
35
    if ( isset( $web_rechte['online_shop']['directory']['auspr_vererbung'] ) )
36
    {
37
        $auspr_vererbung = 1;
38
        $GLOBALS["ui"]->assign( "auspr_vererbung", 1 );
39
    }
40
 
41
 
42
    $mode = filter_input( INPUT_POST, "mode", FILTER_SANITIZE_STRING );
43
 
44
 
45
    if ( isset( $mode ) )
46
    {
47
        $richtung = filter_input( INPUT_POST, "richtung", FILTER_SANITIZE_STRING );
48
        $id = filter_input( INPUT_POST, "id", FILTER_SANITIZE_NUMBER_INT );
49
        $a_id = filter_input( INPUT_POST, "a_id", FILTER_SANITIZE_NUMBER_INT );
50
        $type = filter_input( INPUT_POST, "type", FILTER_SANITIZE_NUMBER_INT );
51
 
52
        $val = filter_input( INPUT_POST, "value", FILTER_SANITIZE_STRING );
53
        $einheit = filter_input( INPUT_POST, "einheit", FILTER_SANITIZE_STRING );
54
        $erklaerung = filter_input( INPUT_POST, "erklaerung",
55
            FILTER_SANITIZE_STRING );
56
        $suchkriterim = filter_input( INPUT_POST, "suchkriterium",
57
            FILTER_SANITIZE_NUMBER_INT );
58
        $abh_auspr = filter_input( INPUT_POST, "abh_auspr",
59
            FILTER_SANITIZE_STRING );
60
        $vererbung = filter_input( INPUT_POST, "vererbung",
61
            FILTER_SANITIZE_NUMBER_INT );
62
 
63
        switch ( $type )
64
        {
65
            case 1:
66
                $werte = $_POST["wert"];
67
                break;
68
            case 3:
69
                $werte = $_POST["preis"];
70
                break;
71
            case 5:
72
            case 6:
73
            case 10:
74
                $werte = $_POST["auswahl"];
75
                break;
76
            case 11:
77
                $werte = $_POST["unterauswahl"];
78
                break;
79
        }
80
        $werte = serialize( $werte );
81
 
82
        $flds = array();
83
        if ( $auspr_abhaengigkeiten )
84
        {
85
            $flds[] = "abh_auspr";
86
        }
87
        if ( $auspr_vererbung == 1 )
88
        {
89
            $flds[] = "vererbung";
90
        }
91
        switch ( $mode )
92
        {
93
            case "save":
94
                if ( $type != 7 )
95
                {
96
                    $sql = "
97
                        SELECT
98
                            MAX(rang)+10 AS max_rang
99
                        FROM
100
                            directory_to_auspraegung
101
                        WHERE
102
                            directory=$id
103
                    ";
104
                    $res = mysql_query( $sql );
105
                    $row = mysql_fetch_assoc( $res );
106
                    $rang = $row["max_rang"];
107
                    if ( is_null( $rang ) )
108
                    {
109
                        $rang = 0;
110
                    }
111
                    $sql = "
112
                        INSERT INTO
113
                            auspraegung
114
                        (
115
                            name,
116
                            suchkriterium,
117
                            type,
118
                            einheit,
119
                    ";
120
                    if ( $type == 1 )
121
                    {
122
                        $sql .= "
123
                            richtung,
124
                        ";
125
                    }
126
                    if ( is_array( $flds ) )
127
                    {
128
                        $sql .= implode( ", ", $flds ) . ", ";
129
                    }
130
                    $sql .= "
131
                            erklaerung,
132
                            erstellt_am,
133
                            erstellt_von
134
                        )
135
                        VALUES
136
                        (
137
                            '$val',
138
                            $suchkriterium,
139
                            $type,
140
                            '$einheit',
141
                    ";
142
                    if ( $type == 1 )
143
                    {
144
                        $sql .= "
145
                            '" . $richtung . "',
146
                        ";
147
                    }
148
                    if ( $abh_auspr )
149
                    {
150
                        $sql .= "'" . $abh_auspr . "',";
151
                    }
152
                    if ( $auspr_vererbung == 1 and isset( $vererbung ) )
153
                    {
154
                        $sql .= $vererbung . ", ";
155
                    }
156
 
157
                    $sql .= "
158
                            '$erklaerung',
159
                            NOW(),
160
                            '" . $_SERVER["PHP_AUTH_USER"] . "'
161
                        )
162
                    ";
163
 
164
                    $res = mysql_query( $sql );
165
                    if ( $res )
166
                    {
167
                        $sql = "
168
                            INSERT INTO
169
                                directory_to_auspraegung
170
                            VALUES
171
                            (
172
                                $id,
173
                                " . mysql_insert_id() . ",
174
                                '$werte',
175
                                $rang
176
                            )
177
                        ";
178
                        $res = mysql_query( $sql );
179
                        echo mysql_error();
180
                    }
181
                }
182
                else
183
                {
184
                    // EULabels einrichten
185
                    $e_label = filter_input( INPUT_POST, "eu_label",
186
                        FILTER_VALIDATE_INT );
187
                    switch ( $e_label )
188
                    {
189
                        case 1:
190
                            // Kühl- und Gefrierschränke
191
                            $auspraegungen[] = array( "EU-Label für Haushalts-Kühl- und Gefriergeräte",
192
                                7 );
193
                            $auspraegungen[] = array( "Hersteller:", 0 );
194
                            $auspraegungen[] = array( "Modell:", 0 );
195
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
196
                                10, 1, serialize( array( "A+++", "A++", "A+",
197
                                "A", "B", "C", "D" ) ) );
198
                            $auspraegungen[] = array( "Stromverbrauch:", 1,
199
                                "kWh/Jahr" );
200
                            $auspraegungen[] = array( "Nutzinahlt Külteil:", 1,
201
                                "L" );
202
                            $auspraegungen[] = array( "Nutzinhalt Gefrierteil:",
203
                                1, "L" );
204
                            $auspraegungen[] = array( "Geräusch:", 1, "dB(A)" );
205
                            break;
206
                        case 2:
207
                            // Weinlagerschränke
208
                            $auspraegungen[] = array( "EU-Label für Weinlagerschrank",
209
                                7 );
210
                            $auspraegungen[] = array( "Hersteller:", 0 );
211
                            $auspraegungen[] = array( "Modell:", 0 );
212
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
213
                                10, "", serialize( array( "A+++", "A++", "A+",
214
                                "A", "B", "C", "D", "E", "F", "G" ) ) );
215
                            $auspraegungen[] = array( "Stromverbrauch:", 8,
216
                                "kWh/Jahr" );
217
                            $auspraegungen[] = array( "Anzahl Flaschen:", 1,
218
                                "Stück" );
219
                            $auspraegungen[] = array( "Geräusch:", 1, "dB(A)" );
220
                            break;
221
                        case 3:
222
                            // Waschmaschinen
223
                            $auspraegungen[] = array( "EU-Label für Haushalts-Waschmaschinen",
224
                                7 );
225
                            $auspraegungen[] = array( "Hersteller:", 0 );
226
                            $auspraegungen[] = array( "Modell:", 0 );
227
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
228
                                10, "", serialize( array( "A+++", "A++", "A+",
229
                                "A", "B", "C", "D" ) ) );
230
                            $auspraegungen[] = array( "Stromverbrauch:", 1,
231
                                "kWh/Jahr" );
232
                            $auspraegungen[] = array( "Wasserverbrauch:", 1,
233
                                "L/Jahr" );
234
                            $auspraegungen[] = array( "Fassungsvermögen:", 1,
235
                                "kg" );
236
                            $auspraegungen[] = array( "Schleuderwirkung", 10, "",
237
                                serialize( array( "A", "B", "C", "D", "E", "F",
238
                                "G" ) ) );
239
                            $auspraegungen[] = array( "Geräusch (Waschen):", 1,
240
                                "dB(A)" );
241
                            $auspraegungen[] = array( "Geräusch (Schleudern):",
242
                                1, "dB(A)" );
243
                            break;
244
                        case 4:
245
                            // Geschirrspüler
246
                            $auspraegungen[] = array( "EU-Label Haushalts-Geschirrspüler",
247
                                7 );
248
                            $auspraegungen[] = array( "Hersteller:", 0 );
249
                            $auspraegungen[] = array( "Modell:", 0 );
250
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
251
                                10, "", serialize( array( "A+++", "A++", "A+",
252
                                "A", "B", "C", "D" ) ) );
253
                            $auspraegungen[] = array( "Stromverbrauch:", 1,
254
                                "kWh/Jahr" );
255
                            $auspraegungen[] = array( "Wasserverbrauch:", 1,
256
                                "L/Jahr" );
257
                            $auspraegungen[] = array( "Trocknungswirkung", 10,
258
                                "", serialize( array( "A", "B", "C", "D", "E",
259
                                "F", "G" ) ) );
260
                            $auspraegungen[] = array( "Anzahl Maßgedecke:", 1,
261
                                "Stück" );
262
                            $auspraegungen[] = array( "Geräusch:", 1, "dB(A)" );
263
                            break;
264
                        case 5:
265
                            // Fernseher
266
                            $auspraegungen[] = array( "EU-Label Fernsehgeräte",
267
                                7 );
268
                            $auspraegungen[] = array( "Hersteller:", 0 );
269
                            $auspraegungen[] = array( "Modell:", 0 );
270
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
271
                                10, "", serialize( array( "A", "B", "C", "D",
272
                                "E", "F", "G" ) ) );
273
                            $auspraegungen[] = array( "Ein-/Ausschalter:", 2 );
274
                            $auspraegungen[] = array( "Leistungsaufnahme:", 1,
275
                                "W" );
276
                            $auspraegungen[] = array( "Stromverbrauch:", 1,
277
                                "kWh/Jahr" );
278
                            $auspraegungen[] = array( "Bildschirmdiagonale:", 1,
279
                                "cm" );
280
                            $auspraegungen[] = array( "Bildschirmdiagonale:", 1,
281
                                "Zoll" );
282
                            break;
283
                        case 6:
284
                            // Trockner
285
                            $auspraegungen[] = array( "EU-Label für Haushalts-Wäschetrockner",
286
                                7 );
287
                            $auspraegungen[] = array( "Hersteller:", 0 );
288
                            $auspraegungen[] = array( "Modell:", 0 );
289
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
290
                                10, "", serialize( array( "A++", "A+", "A", "B",
291
                                "C", "D", "E", "F", "G" ) ) );
292
                            $auspraegungen[] = array( "Stromverbrauch:", 1,
293
                                "kWh/Jahr" );
294
                            $auspraegungen[] = array( "Trocknerart:", 5, "",
295
                                serialize( array( "Ablufttrockner",
296
                                "Kondenstrocker", "Wärmepumpetrockner" ) ) );
297
                            $auspraegungen[] = array( "Fassungsvermögen:", 1,
298
                                "kg" );
299
                            $auspraegungen[] = array( "Geräusch:", 1, "dB(A)" );
300
                            break;
301
                        case 7:
302
                            // Klimageräte
303
                            $auspraegungen[] = array( "EU-Label für Klimageräte",
304
                                7 );
305
                            $auspraegungen[] = array( "Hersteller:", 0 );
306
                            $auspraegungen[] = array( "Modell:", 0 );
307
                            $auspraegungen[] = array( "Geräteart:", 5, "",
308
                                serialize( array( "Außengerät", "Innengerät" ) ) );
309
                            $auspraegungen[] = array( "Energieeffizienzklasse:",
310
                                10, "", serialize( array( "A++", "A+", "A", "B",
311
                                "C", "D", "E", "F", "G" ) ) );
312
                            $auspraegungen[] = array( "Stromverbrauch:", 1,
313
                                "kWh/Jahr" );
314
                            $auspraegungen[] = array( "Kühlleistung:", 1, "kW" );
315
                            $auspraegungen[] = array( "Energieeffizienzklasse bei Vollast:",
316
                                10, "", serialize( array( "A", "B", "C", "D",
317
                                "E", "F", "G" ) ) );
318
                            $auspraegungen[] = array( "Typ:", 5, "", serialize( array
319
                                ( "Nur Kühlfunktion", "Kühl-/Heizfunktion" ) ) );
320
                            $auspraegungen[] = array( "Typ+:", 5, "", serialize
321
                                ( array( "Luftkühlung", "Wasserkühlung" ) ) );
322
                            $auspraegungen[] = array( "Geräusch:", 1, "dB(A)" );
323
                            break;
324
                    }
325
                    foreach ( $auspraegungen as $auspraegung )
326
                    {
327
                        $sql = "
328
                            SELECT
329
                                MAX(rang)+10 AS max_rang
330
                            FROM
331
                                directory_to_auspraegung
332
                            WHERE
333
                                directory=$id
334
                        ";
335
                        $res = mysql_query( $sql );
336
                        $row = mysql_fetch_assoc( $res );
337
                        $rang = $row["max_rang"];
338
                        if ( is_null( $rang ) )
339
                        {
340
                            $rang = 0;
341
                        }
342
                        $sql = "
343
                            INSERT INTO
344
                                auspraegung
345
                            (
346
                                name,
347
                                type,
348
                                einheit,
349
                                eu_label_id
350
                            )
351
                            VALUES
352
                            (
353
                                '" . $auspraegung[0] . "',
354
                                " . $auspraegung[1] . ",
355
                                '" . $auspraegung[2] . "',
356
                                $eu_label
357
                            )
358
                        ";
359
                        $res = mysql_query( $sql );
360
                        $a_id = mysql_insert_id();
361
                        $sql = "
362
                            INSERT INTO
363
                                directory_to_auspraegung
364
                            (
365
                                directory,
366
                                auspraegung,
367
                                wertebereich,
368
                                rang
369
                            )
370
                            VALUES
371
                            (
372
                                $id,
373
                                $a_id,
374
                                '" . $auspraegung[3] . "',
375
                                $rang
376
                            )
377
                        ";
378
                        $res = mysql_query( $sql );
379
                    }
380
                }
381
                break;
382
            case "update":
383
                if ( $type < 7 || $type == 10 || $type == 11 )
384
                {
385
 
386
                    $sql = "
387
                        UPDATE
388
                            auspraegung
389
                        SET
390
                            name='$val',
391
                            type=$type,
392
                            einheit='$einheit',
393
                            suchkriterium=$suchkriterium,
394
                    ";
395
                    if ( $type == 1 )
396
                    {
397
                        $sql .= "
398
                            richtung='" . $richtung . "',
399
                        ";
400
                    }
401
                    if ( is_array( $flds ) and $abh_auspr )
402
                    {
403
                        $sql .= $flds[0] . "='" . $abh_auspr . "',";
404
                    }
405
                    if ( $auspr_vererbung && isset( $vererbung ) )
406
                    {
407
                        $sql .= $flds[1] . "=" . $vererbung . ",";
408
                    }
409
 
410
                    $sql .= "
411
                            erklaerung='$erklaerung',
412
                            geaendert_am=NOW(),
413
                            geaendert_von='" . $_SERVER["PHP_AUTH_USER"] . "'
414
                        WHERE
415
                            ID=$a_id
416
                    ";
417
 
418
                    $res = mysql_query( $sql );
419
                    if ( $res )
420
                    {
421
                        $sql = "
422
                            UPDATE
423
                                directory_to_auspraegung
424
                            SET
425
                                wertebereich='$werte'
426
                            WHERE
427
                                auspraegung=$a_id
428
                            AND
429
                                directory=$id
430
                        ";
431
                        $res = mysql_query( $sql );
432
                    }
433
                }
434
                else
435
                {
436
                    foreach ( $_POST["auspraegung"] as $a_id => $auspraegung )
437
                    {
438
                        $suchkriterim = $auspraegung["suchkriterium"];
439
                        $sql = "
440
                            UPDATE
441
                                auspraegung
442
                            SET
443
                                erklaerung='$erklaerung',
444
                                suchkriterium=" . $suchkriterim . "
445
                            WHERE
446
                                ID=$a_id
447
                        ";
448
                        mysql_query( $sql );
449
                    }
450
                }
451
                break;
452
        }
453
        header( "Location: directory.php?action=edit&ID=" . $id );
454
    }
455
    else
456
    {
457
 
458
        $type = $_REQUEST['type'];
459
        $GLOBALS["ui"]->assign( "type", $type );
460
 
461
 
462
        $types = getAuspraegungTypes( $eu_label );
463
        $GLOBALS["ui"]->assign( "options", $types );
464
        $GLOBALS["ui"]->assign( "werte", array( "", "", "", "", "", "", "", "" ) );
465
        $GLOBALS["ui"]->assign( "preise", array( "", "", "", "", "", "", "", "" ) );
466
        $GLOBALS["ui"]->assign( "labels", getEULabels() );
467
        $GLOBALS["ui"]->assign( "richtungen", array( "" => "neutral", "minimal" =>
468
            "minimal", "maximal" => "maximal" ) );
469
        switch ( $_GET["mode"] )
470
        {
471
            case "edit":
472
                if ( !isset( $_GET["id"] ) || !isset( $_GET["a_id"] ) )
473
                {
474
                    $meld = "zu wenige Parameter angegeben!";
475
                    $error = true;
476
                    $tpl_f = "meld.tpl";
477
                }
478
                else
479
                {
480
                    $id = intval( $_GET["id"] );
481
                    $a_id = intval( $_GET["a_id"] );
482
                    $sql = "
483
                        SELECT
484
                            *
485
                        FROM
486
                            auspraegung a
487
                        JOIN
488
                            directory_to_auspraegung da
489
                        ON
490
                            a.ID=da.auspraegung
491
                        AND
492
                            a.ID=$a_id
493
                    ";
494
                    $res = mysql_query( $sql );
495
                    if ( $res )
496
                    {
497
                        $row = mysql_fetch_assoc( $res );
498
                        $GLOBALS["ui"]->assign( "val", $row["name"] );
499
                        $GLOBALS["ui"]->assign( "id", $id );
500
                        $GLOBALS["ui"]->assign( "a_id", $a_id );
501
                        $GLOBALS["ui"]->assign( "mode", "update" );
502
                        $GLOBALS["ui"]->assign( "einheit", $row["einheit"] );
503
                        $GLOBALS["ui"]->assign( "type", $row["type"] );
504
                        $GLOBALS["ui"]->assign( "suchkriterium", $row["suchkriterium"] );
505
                        $GLOBALS["ui"]->assign( "erklaerung", $row["erklaerung"] );
506
                        $GLOBALS["ui"]->assign( "sub_type", $row["eu_label_id"] );
507
                        $GLOBALS["ui"]->assign( "richtung", $row["richtung"] );
508
                        $GLOBALS["ui"]->assign( "abh_auspr", $row["abh_auspr"] );
509
                        $GLOBALS["ui"]->assign( "vererbung", $row["vererbung"] );
510
 
511
                        if ( $row["type"] == 7 )
512
                        {
513
                            $sql_eu = "SELECT
514
                                    a.*
515
                                FROM
516
                                    auspraegung a
517
                                JOIN
518
                                    directory_to_auspraegung da
519
                                ON
520
                                    da.auspraegung=a.id
521
                                WHERE
522
                                    da.directory=$id
523
                                AND
524
                                    a.eu_label_id=" . $row["eu_label_id"] . "
525
                            ";
526
                            $res_eu = mysql_query( $sql_eu );
527
                            while ( $row_eu = mysql_fetch_assoc( $res_eu ) )
528
                            {
529
                                if ( in_array( $row_eu["type"], array( 1, 5, 10 ) ) )
530
                                {
531
                                    $sub_ausp[] = $row_eu;
532
                                }
533
                            }
534
                            $GLOBALS["ui"]->assign( "sub_ausp", $sub_ausp );
535
                        }
536
                        $werte = unserialize( stripslashes( $row["wertebereich"] ) );
537
 
538
                        if ( $row["type"] == 1 && is_array( $werte ) )
539
                        {
540
                            $GLOBALS["ui"]->assign( "werte", $werte );
541
                        } elseif ( ( $row["type"] == 5 || $row["type"] == 6 || $row["type"] == 10 || $row["type"] ==
542
                        11 ) && is_array( $werte ) )
543
                        {
544
                            $GLOBALS["ui"]->assign( "auswahl", $werte );
545
                            if ( $auspr_abhaengigkeiten == 1 )
546
                            {
547
                                $GLOBALS["ui"]->assign( "unterauswahl", $werte );
548
                            }
549
                        }
550
                        else
551
                        {
552
                            $GLOBALS["ui"]->assign( "preise", $werte );
553
                        }
554
                    }
555
                }
556
                break;
557
            case "add":
558
                if ( !isset( $_GET["id"] ) )
559
                {
560
                    $meld = "zu wenige Parameter angegeben!";
561
                    $error = true;
562
                    $tpl_f = "meld.tpl";
563
                }
564
                else
565
                {
566
                    $id = intval( $_GET["id"] );
567
                    $GLOBALS["ui"]->assign( "val", "" );
568
                    $GLOBALS["ui"]->assign( "id", $id );
569
                    $GLOBALS["ui"]->assign( "mode", "save" );
570
                }
571
                break;
572
            case "delete":
573
                $sql = "SELECT
574
                        *
575
                    FROM
576
                        auspraegung
577
                    WHERE
578
                        id=$a_id
579
                ";
580
                $res = mysql_query( $sql );
581
                $row = mysql_fetch_assoc( $res );
582
                if ( $row["eu_label_id"] && $row["type"] == 7 )
583
                {
584
                    $sql = "
585
                        DELETE FROM
586
                            auspraegung
587
                        WHERE
588
                            eu_label_id=" . $row["eu_label_id"] . "
589
                    ";
590
                }
591
                else
592
                {
593
                    $sql = "
594
                        DELETE FROM
595
                            auspraegung
596
                        WHERE
597
                            ID=" . $a_id . "
598
                    ";
599
                }
600
                $res = mysql_query( $sql );
601
                //echo mysql_error();
602
                header( "Location: directory.php?action=edit&ID=" . $id );
603
                break;
604
            case "down":
605
                $sql = "
606
                    SELECT
607
                        MAX(rang) AS max_rang
608
                    FROM
609
                        directory_to_auspraegung
610
                    WHERE
611
                        directory=$id
612
                ";
613
                $res = mysql_query( $sql );
614
                $row = mysql_fetch_assoc( $res );
615
                $max_rang = $row["max_rang"];
616
                $sql = "
617
                    SELECT
618
                        rang
619
                    FROM
620
                        directory_to_auspraegung
621
                    WHERE
622
                        directory=$id
623
                    AND
624
                        auspraegung=$a_id
625
                ";
626
                $res = mysql_query( $sql );
627
                $row = mysql_fetch_assoc( $res );
628
                $cur_rang = $row["rang"];
629
 
630
                $sql = "
631
                    SELECT
632
                        rang
633
                    FROM
634
                        directory_to_auspraegung
635
                    WHERE
636
                        directory=$id
637
                    AND
638
                        rang > $cur_rang
639
                    ORDER BY
640
                        rang
641
                ";
642
                $res = mysql_query( $sql );
643
                $row = mysql_fetch_assoc( $res );
644
                $rang = $row["rang"];
645
 
646
                $sql = "
647
                    UPDATE
648
                        directory_to_auspraegung
649
                    SET
650
                        rang = $cur_rang
651
                    WHERE
652
                        directory=$id
653
                    AND
654
                        rang = $rang
655
                ";
656
                $res = mysql_query( $sql );
657
                //echo $sql;
658
                $sql = "
659
                    UPDATE
660
                        directory_to_auspraegung
661
                    SET
662
                        rang = $rang
663
                    WHERE
664
                        directory=$id
665
                    AND
666
                        auspraegung = $a_id
667
                ";
668
                $res = mysql_query( $sql );
669
                //echo $sql;
670
                header( "Location: directory.php?action=edit&ID=" . $id );
671
                break;
672
            case "up":
673
                //ersten Eintrag bestimmen
674
                $sql = "
675
                    SELECT
676
                        MIN(rang) AS min_rang
677
                    FROM
678
                        directory_to_auspraegung
679
                    WHERE
680
                        directory=$id
681
                ";
682
                $res = mysql_query( $sql );
683
                $row = mysql_fetch_assoc( $res );
684
                $min_rang = $row["min_rang"];
685
                //akutelle Position bestimmen
686
                $sql = "
687
                    SELECT
688
                        rang
689
                    FROM
690
                        directory_to_auspraegung
691
                    WHERE
692
                        auspraegung=$a_id
693
                ";
694
                $res = mysql_query( $sql );
695
                $row = mysql_fetch_assoc( $res );
696
                $cur_rang = $row["rang"];
697
                $sql = "
698
                    SELECT
699
                        rang
700
                    FROM
701
                        directory_to_auspraegung
702
                    WHERE
703
                        directory=$id
704
                    AND
705
                        rang < $cur_rang
706
                    ORDER BY
707
                        rang DESC
708
                ";
709
                //header( "Location: directory.php?action=edit&ID=" . $id );
710
                $res = mysql_query( $sql );
711
                $row = mysql_fetch_assoc( $res );
712
                $rang = $row["rang"];
713
                $sql = "
714
                    UPDATE
715
                        directory_to_auspraegung
716
                    SET
717
                        rang=$cur_rang
718
                    WHERE
719
                        rang=$rang
720
                    AND
721
                        directory=$id
722
                ";
723
                mysql_query( $sql );
724
                $sql = "
725
                    UPDATE
726
                        directory_to_auspraegung
727
                    SET
728
                        rang=$rang
729
                    WHERE
730
                        auspraegung=$a_id
731
                    AND
732
                        directory=$id
733
                ";
734
                mysql_query( $sql );
735
                header( "Location: directory.php?action=edit&ID=$id" );
736
                break;
737
            default:
738
                $meld = "Skript wurde falsch aufgerufen!";
739
                $error = true;
740
                $tpl_f = "meld.tpl";
741
                break;
742
        }
743
    }
744
    $GLOBALS["ui"]->assign( "meld", $meld );
745
    $GLOBALS["ui"]->assign( "error", $error );
746
    $GLOBALS["ui"]->assign( "tpl_f", ( $tpl_f ) ? $tpl_f : "auspraegung.tpl" );
747
    $GLOBALS["ui"]->display( "page.tpl" );
748
 
749
    function getEULabels()
750
    {
751
        $sql = "SELECT
752
                id,
753
                name
754
            FROM
755
                eu_labels
756
        ";
757
        $res = mysql_query( $sql );
758
        while ( $row = mysql_fetch_assoc( $res ) )
759
        {
760
            $eulabels[$row["id"]] = $row["name"];
761
        }
762
        return $eulabels;
763
    }
764
 
765
    function getAuspraegungTypes()
766
    {
767
        $sql = "SELECT
768
                id,
769
                name
770
            FROM
771
                auspraegung_typ
772
            WHERE
773
                in_list=1
774
        ";
775
        if ( $_GET["mode"] == "edit" )
776
        {
777
            $sql .= "
778
            OR
779
                id=10
780
            ";
781
        }
782
        $res = mysql_query( $sql );
783
        while ( $row = mysql_fetch_assoc( $res ) )
784
        {
785
            $ret[$row["id"]] = $row["name"];
786
        }
787
        return $ret;
788
    }
789
?>