Skip to content
Snippets Groups Projects
admin_listmodel_setObjectId.php 4.9 KiB
Newer Older
  • Learn to ignore specific revisions
  • Cyril Vazquez's avatar
    Cyril Vazquez committed
    <?php
    # AJAX script to list objects to be linked with list model
    
    function asSelect(
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    ) {
        $return = "<select id='objectId' style='width:300px;'>";
        
        foreach($items as $id => $label) {
    
            $return .= "<option value='".$id."'";
            if($id == $objectId) $return .= " selected='true' ";
            $return .= ">";
    
                if($id) $return .=  $id . ' ';
                $return .= $label;
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        }
        $return .= "</select>";
        return $return;
    }
    
    require_once 'core/class/class_core_tools.php';
    $core = new core_tools();
    $core->load_lang();
    
    require_once 'modules/entities/class/class_manage_listdiff.php';
    $difflist = new diffusion_list();
    
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    $mode = $_REQUEST['mode'];
    $objectType = $_REQUEST['objectType'];
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    
    if(!$objectType) {
        echo ""; 
        return;
    }
    
    switch($objectType) {
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    case 'entity_id':   
        require_once 'modules/entities/class/class_manage_entities.php';
        $ent = new entity();
        $entity_ids = $ent->get_all_entities_id_user();
        $entities = array();
        for($i=0, $l=count($entity_ids);
            $i<$l;
            $i++
        ) {
            $entity_id = substr($entity_ids[$i], 1, -1);
            $existinglist = 
                $difflist->get_listmodel(
                    'entity_id',
                    $entity_id
                );
    
                $entities[$entity_id] = $ent->getentitylabel($entity_id); 
            }
        }
        if(count($entities) > 0)
            echo asSelect($entities, $objectId);
        else {   
            echo asSelect(array("" => _ALL_OBJECTS_ARE_LINKED));
        }    
        break;
    case 'VISA_CIRCUIT':   
        require_once 'modules/entities/class/class_manage_entities.php';
        $ent = new entity();
        $entity_ids = $ent->get_all_entities_id_user();
        $entities = array();
        for($i=0, $l=count($entity_ids);
            $i<$l;
            $i++
        ) {
            $entity_id = substr($entity_ids[$i], 1, -1);
            $existinglist = 
                $difflist->get_listmodel(
                    'VISA_CIRCUIT',
                    $entity_id
                );
            if(!$existinglist) {
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
                $entities[$entity_id] = $ent->getentitylabel($entity_id); 
            }
        }
        if(count($entities) > 0)
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        else {   
            echo asSelect(array("" => _ALL_OBJECTS_ARE_LINKED));
        }    
        break;
    
    
    case 'AVIS_CIRCUIT':   
        require_once 'modules/entities/class/class_manage_entities.php';
        $ent = new entity();
        $entity_ids = $ent->get_all_entities_id_user();
        $entities = array();
        for($i=0, $l=count($entity_ids);
            $i<$l;
            $i++
        ) {
            $entity_id = substr($entity_ids[$i], 1, -1);
            $existinglist = 
                $difflist->get_listmodel(
                    'VISA_CIRCUIT',
                    $entity_id
                );
            if(!$existinglist) {
                $entities[$entity_id] = $ent->getentitylabel($entity_id); 
            }
        }
        if(count($entities) > 0)
            echo asSelect($entities, $objectId);
        else {   
            echo asSelect(array("" => _ALL_OBJECTS_ARE_LINKED));
        }    
        break;
         
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    case 'type_id':
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
        require_once 'core/class/class_db_pdo.php';
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        require_once 'core/core_tables.php';
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
        $db = new Database();
    
        $stmt = $db->query("SELECT type_id, description FROM  " . DOCTYPES_TABLE);
        while($doctype = $stmt->fetchObject()) {
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
            $type_id = $doctype->type_id;
            $existinglist = 
                $difflist->get_listmodel(
                    'type_id',
                    $type_id
                );
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
                $doctypes[$type_id] = $doctype->description; 
            }
        }
        if(count($doctypes) > 0)
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        else    
            echo asSelect(array("" => _ALL_OBJECTS_ARE_LINKED));
        
        break;
        
    case 'foldertype_id':
        require_once 'core/class/class_db.php';
        require_once 'modules/folder/folder_tables.php';
    
        $db = new Database();
        $stmt = $db->query("SELECT foldertype_id, foldertype_label FROM  " . FOLD_FOLDERTYPES_TABLE);
        while($foldertype = $stmt->fetchObject()) {
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
            $foldertype_id = $foldertype->foldertype_id;
            $existinglist = 
                $difflist->get_listmodel(
                    'foldertype_id',
                    $foldertype_id
                );
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
                $foldertypes[$foldertype_id] = $foldertype->foldertype_label; 
            }
        }
        if(count($foldertypes) > 0)
    
            echo asSelect($foldertypes, $objectId);
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        else    
            echo asSelect(array("" => _ALL_OBJECTS_ARE_LINKED));
        break;
        
    case 'user_defined_id':
    default:
    
        if(!$objectId) 
            $objectId = $objectType . '_' . strtoupper(base_convert(date('U'), 10, 36));
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        echo "<input type='text' id='objectId' style='width:300px;' value='$objectId' />";
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
        break;
    }