Changeset 17024 for lang/actionscript

Show
Ignore:
Timestamp:
08/03/08 21:38:59 (4 months ago)
Author:
hoge1e3
Message:
 
Location:
lang/actionscript/todoshare
Files:
4 added
5 modified
1 moved

Legend:

Unmodified
Added
Removed
  • lang/actionscript/todoshare/backupDB.cgi

    r16062 r17024  
    1717   my $e=shift; 
    1818   print "  "; 
    19    print toJSON(["MAKEREL",$e->{obj},$e->{name},$e->{val}]); 
     19   print toJSON(["MAKEREL",$e->{obj},$e->{name},$e->{val},$e->{t},$e->{role}]); 
    2020   print ",\n"; 
    2121}); 
  • lang/actionscript/todoshare/db/db.sql

    r16697 r17024  
    1616  val     varchar(255), 
    1717  t       varchar(32), 
    18   role    varchar(32) 
     18  role    varchar(32), 
    1919); 
    2020 
     21create table relation_arcl ( 
     22  obj     varchar(255), 
     23  name    varchar(255), 
     24  val     varchar(255), 
     25  t       varchar(32), 
     26  role    varchar(32), 
     27); 
    2128 
    2229 
  • lang/actionscript/todoshare/jsonDB.html

    r16711 r17024  
    66function exe() { 
    77   var cmd=$("cmd").value; 
     8   $("res").value="Sending.."; 
    89   //alert(cmd); 
    910   new Ajax.Request("db.cgi", { 
     
    3334}] 
    3435</textarea> 
    35 <button onclick="exe();return false;" onsubmit="return false;">AJax</button> 
    36 <input type=submit> 
     36<button onclick="exe();return false;" onsubmit="return false;">=></button> 
    3737<textarea rows=10 cols=40 id=res></textarea> 
    3838</form> 
    3939<BR> 
    4040<textarea rows=10 cols=40 name=cmd> 
     41["DELREL","ねこ","色","三毛"] 
     42["SELARCHIVE",["PROGN"],["FINDREL","猫","色","三毛"]] 
    4143["DELREL","obj://gorira","type","animal"] 
    4244["GET",{ "from":"relation", 
  • lang/actionscript/todoshare/perl/JSON2.pm

    r16016 r17024  
    1515sub fromJSON { 
    1616   my $j=shift; 
    17    #my $json=new JSON(); 
     17   JSON->new->utf8(1)->decode($j); 
     18   #my $json=new JSON()->utf8(0); 
    1819   #$json->decode($j); 
    19    decode_json($j); 
     20   #decode_json($j); 
    2021} 
    2122 
  • lang/actionscript/todoshare/perl/Obj.pm

    r16772 r17024  
    3535  } else {$prefix="";} 
    3636  $prefix. time ; 
     37} 
     38sub setUTF { 
     39  my $href=shift; 
     40  for (values %$href) { 
     41    utf8::decode($_); 
     42  } 
    3743} 
    3844sub exe { 
     
    5864                  for (my $i=0; $i<$num_rows; $i++) { 
    5965                    my $a = $sth->fetchrow_hashref; 
     66                    &setUTF($a); 
    6067                    $a->{_class}=$data->{from}; 
    6168                    push @{$res}, $a; 
     
    257264                for (my $i=0; $i<$num_rows; $i++) { 
    258265                    my $a = $sth->fetchrow_hashref; 
     266                    &setUTF($a); 
    259267                    push @{$res}, $a; 
    260268                } 
     
    320328                for (my $i=0; $i<$num_rows; $i++) { 
    321329                    my $a = $sth->fetchrow_hashref; 
     330                    &setUTF($a); 
    322331                    push @{$res}, $a; 
    323332                } 
     
    340349           return ["EXISTS"]; 
    341350        } 
     351        #my $t=$cmd->[4]; 
     352        #my $role= 
    342353            return &exe(["INSERT",$relName, { 
    343354               obj => $cmd->[1], 
     
    349360        } elsif ($cmd->[0] eq 'DELREL') { 
    350361            # ["DELREL" , obj, name, val] 
     362            my $backupQ=["FINDREL",$cmd->[1],$cmd->[2],$cmd->[3]]; 
     363            my $res=&exe($backupQ); 
     364            return ["SELARCHIVE", 
     365              ["PROGN", 
     366                map ["MAKEREL",$_->{obj},$_->{name},$_->{val},$_->{t},$_->{role}], 
     367                    @$res 
     368              ], 
     369              $backupQ 
     370            ];       
    351371            my $where={}; 
    352372            $where->{obj} = $cmd->[1]; 
    353             $where->{name}= $cmd->[2]; 
    354             $where->{val} = $cmd->[3]; 
     373            $where->{name}= $cmd->[2] if ($cmd->[2] and not &isAny($cmd->[2])); 
     374            $where->{val} = $cmd->[3] if ($cmd->[2] and not &isAny($cmd->[3])); 
    355375            $where->{role}=&Session::getRole; 
    356376            return &exe(["DELETE",$relName,$where]); 
     
    463483sub log { 
    464484  my ($cmd,$query)=@_; 
    465   print STDERR "\n$query"; 
     485  print STDERR ("\n$query utfFlg=".utf8::is_utf8($query)); 
    466486  push @logBuf,$query; 
    467487} 
     
    469489  join "\n",@logBuf; 
    470490} 
    471  
     491sub doQuery { 
     492  my $query=shift; 
     493  my $sth = $db->prepare($query); 
     494                my $eres=$sth->execute; 
     495                my $res; 
     496                if (!$eres) {  
     497                  $res=["Fail",$query,$sth->errstr]; 
     498                } else { 
     499                  my $num_rows = $sth->rows; 
     500                  $res=[]; 
     501                  for (my $i=0; $i<$num_rows; $i++) { 
     502                    my $a = $sth->fetchrow_hashref; 
     503                    push @{$res}, $a; 
     504                  } 
     505                } 
     506                $sth->finish; 
     507        return array($res);              
     508} 
    472509 
    4735101;