Changeset 2775


Ignore:
Timestamp:
09/22/10 21:43:13 (4 years ago)
Author:
azerttyu
Message:

Determiner le chemin selectionné depuis l'image

  • Extraire les coordonnées ISMAP de la carte
  • Calculer le chemin depuis les coordonnées
Location:
alternc-philesight/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • alternc-philesight/trunk/usr/lib/alternc/philesight

    r2764 r2775  
    1313        [ "--dump",                "-u", GetoptLong::NO_ARGUMENT       ], 
    1414        [ "--one-file-system", "-1", GetoptLong::NO_ARGUMENT       ], 
    15         [ "--help",            "-h", GetoptLong::NO_ARGUMENT       ] 
     15        [ "--help",            "-h", GetoptLong::NO_ARGUMENT       ], 
     16        [ "--find",            "-f", GetoptLong::REQUIRED_ARGUMENT  ] 
    1617) 
    1718 
     
    2829        puts "  --one-file-system  Skip mount points" 
    2930        puts "  --skip <path>      Skip given filename in index mode" 
     31        puts "  --find x,y         Determine path from x,y" 
    3032        puts 
    3133        puts "Examples:" 
     
    4951arg_skip = "" 
    5052arg_drawfile = "" 
    51  
     53arg_x = "" 
     54arg_y = "" 
    5255 
    5356opts.each do |opt, arg| 
     
    7881                mode = "dump" 
    7982 
     83        when "--find" 
     84                mode = "find" 
     85                if(arg =~  /(\d+),(\d+)/) then 
     86                        arg_x = $1.to_i 
     87                        arg_y = $2.to_i 
     88                end 
    8089        else 
    8190                usage 
     
    111120                t.index(arg_index_dir, arg_skip, arg_one_fs) 
    112121 
     122        when "find" 
     123                puts t.find(arg_path, arg_x, arg_y) 
    113124        else 
    114125                usage() 
  • alternc-philesight/trunk/var/alternc/bureau/admin/philesight_view.php

    r2773 r2775  
    4343<br /> 
    4444<?php 
    45                 # Get parameters from environment and CGI. 
     45                $phil = new Philesight(); 
    4646 
    47                 $phil = new Philesight(); 
    48                 $phil->initialize(); 
     47                # Get parameters from environment and CGI.  
     48                # Get path by default 
     49                $path = $_GET['path'] ? $_GET['path'] : "/"; 
     50 
     51                # ISMAP image maps do not return a proper CGI parameter, but only the 
     52                # coordinates appended after a question mark. If this is found in the 
     53                # QUERY_STRING, assume the 'find' command 
     54 
     55                $qs = $_SERVER["QUERY_STRING"]; 
     56                if (qs && preg_match("/\?(\d+,\d+)/",$qs,$matches)) { 
     57                        $coordinates = $matches['1']; 
     58                        $path = $phil->find_path($path,$coordinates); 
     59                } 
     60 
     61                $phil->initialize($path); 
    4962?> 
    5063</body> 
  • alternc-philesight/trunk/var/alternc/bureau/class/philesight.php

    r2774 r2775  
    2525        private $path_db = '/var/alternc/philesight/server.db'; 
    2626 
    27         public function initialize() { 
    28                 echo $this->do_image('/'); 
     27        public function initialize($path) { 
     28 
     29                $path = $path ? $path : "/"; 
     30                echo "<a href='".$_SERVER['PHP_SELF']."?path=".$path."&amp;'>"; 
     31                        echo $this->do_image($path); 
     32                echo "</a>"; 
    2933        } 
    3034 
     
    5256         */ 
    5357        protected function run_command($command) { 
     58 
    5459                $descriptorspec = array( 
    5560                        1 => array('pipe', 'w'), 
     
    7277 
    7378        protected function do_image($path = "/") { 
    74  
    75                 $fname = $this->run("--db ".$this->path_db." --path ".$path." --draw /tmp/page.png"); 
    7679                $file = '/tmp/page.png'; 
     80                $fname = $this->run("--db '".$this->path_db."' --path '".trim($path)."' --draw '".$file."'"); 
    7781                $image = imagecreatefrompng($file); 
    7882                imagealphablending($image, false); 
     
    8589                ob_end_clean(); 
    8690                imagedestroy($image); 
    87                 return "<img src='data:image/png;base64,".base64_encode($content)."' />"; 
     91                return "<img src='data:image/png;base64,".base64_encode($content)."' ismap='ismap' alt='".$path."'/>"; 
     92        } 
     93 
     94        public function find_path($path_parent = "/",$coordinates) { 
     95                $path = $this->run("--db ".$this->path_db." --path ".$path_parent." --find ".$coordinates); 
     96                return $path; 
    8897        } 
    8998} 
Note: See TracChangeset for help on using the changeset viewer.