Changeset 1449

Show
Ignore:
Timestamp:
08/05/07 13:49:33 (1 year ago)
Author:
jm3
Message:

clean delete user functionality

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • feedmelinks/modules/utils.inc.php

    r1448 r1449  
    1111define( "IDLENESS", 1 ); 
    1212define( "SPAMMING", 2 ); 
     13 
     14 
     15/* functions */ 
     16 
     17/* deleting */ 
     18 
     19function delete_links_for_user( $u, $confirm_true ) { 
     20        if( !$u ) 
     21                return; 
     22        $q = run_query( getQuery( "links_for_user", $u )); 
     23        $c = mysql_num_rows($q); 
     24        $count = 0; 
     25        echo "for-each link:\n"; 
     26        while( $row = mysql_fetch_assoc( $q ) ) { 
     27                $ID = urldecode( $row["ID"] ); 
     28                deleteCategorizationForLink( $ID ); 
     29                deleteLink( $ID, $u ); 
     30                $count++; 
     31        } 
     32        return $count; 
     33} 
     34 
     35function delete_tags_for_user( $u, $confirm_true ) { 
     36        if( !$u ) 
     37                return; 
     38        echo "for-each tag\n"; 
     39 
     40        $q = run_query( getQuery( "tags_for_user", $u )); 
     41        $c = mysql_num_rows($q); 
     42        $count = 0; 
     43        echo "for-each tag:\n"; 
     44        while( $row = mysql_fetch_assoc( $q ) ) { 
     45                $ID = urldecode( $row["ID"] ); 
     46                delete_tag( $u, $ID ); 
     47                $count++; 
     48        } 
     49        return $count; 
     50} 
     51 
     52function delete_tag( $u, $t ) { 
     53        if( !$u || !$t ) 
     54                return; 
     55        echo "  FIXME: delete the tag\n"; 
     56        $qs = getQuery( "delete_tag", $u, $t ); 
     57        $q = run_query( $qs ); 
     58        echo $q; 
     59} 
     60 
     61function delete_user( $u, $confirm_true ) { 
     62        if( !$u ) 
     63                return; 
     64        echo "deleted " . delete_links_for_user( $u, $confirm_true ) . " links.\n"; 
     65        echo "deleted " . delete_tags_for_user(  $u, $confirm_true ) . " tags.\n"; 
     66        echo "FIXME: delete the comments\n"; # FIXME: not implemented 
     67} 
    1368 
    1469function is_whitelisted( $user ) { 
     
    24772532                        SELECT * FROM tags WHERE name = 'private' AND userid = '" . urlencode( $args[1] ) . "';"; 
    24782533 
     2534        } else if( $argWhichQuery  == "tags_for_user" ) { 
     2535                $user = urlencode( $args[1] ); 
     2536    return " 
     2537                SELECT * FROM tags WHERE userid = '$user';"; 
     2538         
     2539        } else if( $argWhichQuery  == "links_for_user" ) { 
     2540                $user = urlencode( $args[1] ); 
     2541                return " 
     2542                SELECT * FROM links WHERE userid = '$user'"; 
     2543 
    24792544        } else if( $argWhichQuery  == "links_tagged_for_me" ) { 
    24802545                $me = urlencode( $args[1] ); 
     
    26622727  } else if( $argWhichQuery  == "delete_tag" ) { 
    26632728    return " 
    2664     DELETE from tags where ID = " . $args[1]; 
     2729    DELETE from tags where userid = '" . urlencode( $args[1] ) . "' AND ID = " . $args[2]; 
    26652730 
    26662731  } else if( $argWhichQuery  == "add_new_category_xref" ) {