public function user_add($map)
 {
     $anim = '巴厘虎 斑马 豹子 北极狐 仓鼠 长颈鹿 臭鼬 穿山甲 刺猬 大熊猫 袋鼠 貂 东北虎 非洲象 狒狒 狗 海豹 海狗 海牛 海狮 海豚 海象 河马 黑熊 猴 狐狸 华南虎 灰狼 家鼠 金钱豹 金丝猴 鲸鱼 考拉 狼 老虎 老鼠 类人猿 羚羊 鹿 猫 梅花鹿 猛犸象 孟加拉虎 猕猴 貘 犰狳 猞猁 麝牛 狮子 食蚁兽 树懒 水獭 苏门答腊虎 无尾熊 犀牛 象 小熊猫 新疆虎 猩猩 熊 熊猫 驯鹿 鸭嘴兽 亚洲象 羊驼 疣猪 原驼 中国狼 爪哇虎 棕熊 鱼类龙鱼河豚飞鱼淡水鱼章鱼›刺鱼目 带鱼 淡水鱼 鲽形目 杜父鱼 鳄鱼 飞鱼 鲱鱼 鲑鱼 海葵鱼 河豚 鲫鱼 金枪鱼 锦鲤 孔雀鱼 鲤鱼 鳢形目 鳢鱼 龙鱼 鲈鱼 鳗鲡 泥鳅 鲵 鲶鱼 平鱼 鳅鱼 热带鱼 鲨鱼 深海鱼 神仙鱼 塘鳢 鲀鱼 鰕虎鱼 小丑鱼 鳕鱼 鲟鱼 鳐鱼 鮋 章鱼 鳟鱼 鸟类‹蜂鸟鹳夜鹰鹅鸳鸯›八哥 白头翁 北极燕鸥 翠鸟 大雁 鹅 鸸鹋 蜂鸟 鹳 海鸥 鹤 鹮 鲣鸟 鹭 猫头鹰 企鹅 松鸡 隼 鹈鹕 天鹅 鸵鸟 犀鸟 鸮 信天翁 夜鹰 遗鸥 鹦鹉 鹰 鸳鸯 啄木鸟 其它动物‹龟水母海绵甲鱼蝎子›鳖 草履虫 蟾蜍 大鲵 龟 龟鳖 海参 海胆 海龟 海葵鱼 海绵 海星 海蜇 蝴蝶 蝗虫 甲鱼 恐龙 蚂蚱 青蛙 蚯蚓 肉足虫 三叶虫 珊瑚虫 水母 水螅 水蚤 水蛭 绦虫 藤壶 乌贼 蜈蚣 吸虫 蜥蜴 蟋蟀 纤毛虫 蝎子 蚓螈 螈 中华草龟';
     $anims = explode(' ', $anim);
     $index = rand(0, count($anims) - 1);
     $name = $anims[$index];
     $map['name'] || ($map['name'] = $name);
     $map['gtime'] = getnow();
     return $this->add($map);
 }
function newNodeRevisionExecute()
{
    if (fv('nodeDataUploadFlag')) {
        //					 echo 'Adding data…';
        $tablenamenewdata = "data";
        $next_incrementdata = 0;
        $qShowStatusdata = "SHOW TABLE STATUS LIKE '{$tablenamenewdata}'";
        $qShowStatusResultdata = mysql_query($qShowStatusdata) or die("Query failed: " . mysql_error() . "<br/>" . $qShowStatusdata);
        $rowdata = mysql_fetch_assoc($qShowStatusResultdata);
        $next_incrementdata = $rowdata['Auto_increment'];
        mysql_query('INSERT INTO `data` (`data_id`, `data_current_revision`) VALUES (NULL, \'' . $next_incrementdata . '\');');
        $addedDataId = mysql_insert_id();
        //					 echo 'data number ' . $addedDataId . 'and data revision number ';
        $fileTempName = $_FILES['uploadeddata']['tmp_name'];
        mysql_query('INSERT INTO `data_revision` (`data_revision_id`, `data_revision_name`, `data_revision_length`, `data_revision_type`, `data_revision_node_id`, `data_revision_md5`, `data_revision_data_id`, `data_revision_node_edit_id`) VALUES (NULL, \'' . $HTTP_POST_FILES['uploadeddata']['name'] . '\', \'' . $HTTP_POST_FILES['uploadeddata']['size'] . '\', \'' . fv('dataType') . '\', \'nodeid\', \'' . md5_file($fileTempName) . '\', \'' . $addedDataId . '\', \'not yet known\');');
        $targetULDirectory = 'weave/data/' . str_replace(0, '0/', str_replace(1, '1/', str_replace(2, '2/', str_replace(3, '3/', str_replace(4, '4/', str_replace(5, '5/', str_replace(6, '6/', str_replace(7, '7/', str_replace(8, '8/', str_replace(9, '9/', mysql_insert_id()))))))))));
        mkdir($targetULDirectory, 0700, true);
        /*					  $ck = mysql_insert_id();
                        $subdirs = array();
                        
                        for ($i = 0;$i < strlen($ck);$i++) $subdirs[] = $ck[$i];
                */
        $addedDataRevisionId = mysql_insert_id();
        //					echo $addedDataRevisionId;
        $targetULDirectory = $targetULDirectory . $addedDataRevisionId . '.wdf';
        //					 echo $targetULDirectory;
        move_uploaded_file($fileTempName, $targetULDirectory);
    } else {
        //					 echo 'not adding data. ';
    }
    $tablenamenewnode = "node_revision";
    $next_incrementnode = 0;
    $qShowStatusnode = "SHOW TABLE STATUS LIKE '{$tablenamenewnode}'";
    $qShowStatusResultnode = mysql_query($qShowStatusnode) or die("Query failed: " . mysql_error() . "<br/>" . $qShowStatusnode);
    $rownode = mysql_fetch_assoc($qShowStatusResultnode);
    $next_incrementnode_revision = $rownode['Auto_increment'];
    mysql_query('UPDATE `node` SET `node_current_revision` = \'' . $next_incrementnode_revision . '\' WHERE `node_id` =' . fv('nodeId') . ' LIMIT 1 ;');
    //INSERT INTO  `node` (	`node_id` , `node_current_revision` ) VALUES (' . fv('nodeId') . ',  \'' . $next_incrementnode_revision . '\');');
    $nodeEditedId = mysql_insert_id();
    newintf($_POST['nodeDisplayTitle']);
    global $newIntfId;
    $nodeDisplayTitleIntfId = $newIntfId;
    newintf($_POST['nodeShortTitle']);
    global $newIntfId;
    $nodeShortTitleIntfId = $newIntfId;
    newintf($_POST['nodeTitle']);
    global $newIntfId;
    $nodeTitleIntfId = $newIntfId;
    newintf($_POST['nodeSource']);
    global $newIntfId;
    $nodeSourceIntfId = $newIntfId;
    newintf($_POST['nodeSortTitle']);
    global $newIntfId;
    $nodeSortTitleIntfId = $newIntfId;
    newintf($_POST['nodeDescription']);
    global $newIntfId;
    $nodeDescriptionIntfId = $newIntfId;
    newintf($_POST['nodeDisambiguationDescription']);
    global $newIntfId;
    $nodeDisambiguationDescriptionIntfId = $newIntfId;
    newintf($_POST['nodeComment']);
    global $newIntfId;
    $nodeCommentIntfId = $newIntfId;
    newintf($_POST['nodeShortDescription']);
    global $newIntfId;
    $nodeShortDescriptionIntfId = $newIntfId;
    $newNodeOwnerId = qry('user', 'user_id', 'user_name', mysql_real_escape_string($_POST['userName']));
    $newNodeData = array("node_revision_type" => $_POST['nodeType'], "node_revision_display_title" => $nodeDisplayTitleIntfId, "node_revision_short_title" => $nodeShortTitleIntfId, "node_revision_title" => $nodeTitleIntfId, "node_revision_permissions" => $_POST['nodePermissions'], "node_revision_relationships" => $_POST['nodeRelationships'], "node_revision_source" => $nodeSourceIntfId, "node_revision_sort_title" => $nodeSortTitleIntfId, "node_revision_description" => $nodeDescriptionIntfId, "node_revision_disambiguation_description" => $nodeDisambiguationDescriptionIntfId, "node_revision_metadata" => $_POST['nodeMetadata'], "node_revision_comment" => $nodeCommentIntfId, "node_revision_short_description" => $nodeShortDescriptionIntfId, "node_revision_universe_status" => $_POST['nodeUniverseStatus'], "node_revision_owner" => $newNodeOwnerId, "node_revision_copyright_flag" => $_POST['nodeCopyrightFlag'], "node_revision_morality_flag" => $_POST['nodeMoralityFlag'], "node_revision_personal_flag" => $_POST['nodePersonalFlag'], "node_revision_data_id" => $addedDataId, "node_revision_node_id" => fv('nodeId'), "node_revision_minor_flag" => $_POST['nodeMinorFlag'], "node_revision_time" => getnow());
    ins('node_revision', $newNodeData);
    $nodeRevisionAddedId = mysql_insert_id();
    $nodeEditedId = fv('nodeId');
    $user = new user(0, '', 0, fv('wvUserName'), 0, '', '', '');
    $user->request_content('user_name', fv('wvUserName'));
    $newnodeeditids = $user->node_edit_ids . itr(1494) . $nodeRevisionAddedId;
    $user->set_variable('node_edit_ids', $newnodeeditids);
    return $nodeEditedId;
}