File size: 2,467 Bytes
07c3cdd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php

$id = isset( $_GET['id'] ) ? $_GET['id'] : false;
$table = false;
$oHeadPublisher = & headPublisher::getSingleton();

$oHeadPublisher->addExtJsScript( 'reportTables/edit', true );
$oHeadPublisher->assign( 'ADD_TAB_UID', $id );

if ($id) {
    // if is a edit request

    $additionalTables = new AdditionalTables();
    $table = $additionalTables->load( $id, true );
    $tableFields = array ();
    $fieldsList = array ();

    // list the case fields
    foreach ($table['FIELDS'] as $i => $field) {
        /*if ($field['FLD_NAME'] == 'APP_UID' || $field['FLD_NAME'] == 'APP_NUMBER' || $field['FLD_NAME'] == 'ROW') {
        unset($table['FIELDS'][$i]);
        continue;
        }*/
        array_push( $tableFields, $field['FLD_DYN_NAME'] );
    }

    //list dynaform fields
    if ($table['ADD_TAB_TYPE'] == 'NORMAL') {
        $fields = getDynaformsVars( $table['PRO_UID'], false );
        foreach ($fields as $field) {
            //select to not assigned fields for available grid
            if (! in_array( $field['sName'], $tableFields )) {
                $fieldsList[] = array ('FIELD_UID' => $field['sName'] . '-' . $field['sType'],'FIELD_NAME' => $field['sName']);
            }
        }
    } else {
        list ($gridName, $gridId) = explode( '-', $table['ADD_TAB_GRID'] );

        $G_FORM = new Form( $table['PRO_UID'] . '/' . $gridId, PATH_DYNAFORM, SYS_LANG, false );
        $gridFields = $G_FORM->getVars( false );

        foreach ($gridFields as $gfield) {
            if (! in_array( $gfield['sName'], $tableFields )) {
                $fieldsList[] = array ('FIELD_UID' => $gfield['sName'] . '-' . $gfield['sType'],'FIELD_NAME' => $gfield['sName']);
            }
        }
    }

    $oHeadPublisher->assign( 'avFieldsList', $fieldsList );
}

$repTabPluginPermissions = false;
global $G_TMP_MENU;
$oMenu = new Menu();
$oMenu->load( 'setup' );

foreach ($oMenu->Options as $i => $option) {
    if ($oMenu->Types[$i] == 'private' && $oMenu->Id[$i] == 'PLUGIN_REPTAB_PERMISSIONS') {
        $repTabPluginPermissions = array ();
        $repTabPluginPermissions['label'] = $oMenu->Labels[$i];
        $repTabPluginPermissions['fn'] = $oMenu->Options[$i];
        break;
    }
}

$oHeadPublisher->assign( '_plugin_permissions', $repTabPluginPermissions );

$oHeadPublisher->assign( 'PRO_UID', isset( $_GET['PRO_UID'] ) ? $_GET['PRO_UID'] : false );
$oHeadPublisher->assign( 'TABLE', $table );

G::RenderPage( 'publish', 'extJs' );