Make(web) ver(4.04 build 183) Add(EntryPoint,14564487,21,105) { link(onStart,3261979:doInclude,[]) } Add(Include,3261979,70,105) { FileName="share.php" link(onInclude,2779989:doEvent,[]) } Add(Vars,7250385,217,105) { Name="q" Point(Get) } Add(DoData,9758758,217,161) { link(onEventData,8403278:doWork1,[]) link(Data,7250385:Get,[(223,149)(230,149)]) } Add(MultiElement,8403278,266,161) { @Hint=#5:Форум| CodeType=1 link(onEvent1,16299581:doWork1,[]) link(Data1,3523579:Text,[]) AddHint(94,-127,54,14,@Hint) } BEGIN_SDK Add(EditMulti,1641346,13,13) { EventCount=1 WorkCount=1 DataCount=1 Width=1184 Height=781 link(doWork1,8861133:doCase,[(27,19)(27,48)]) } Add(Case,8861133,41,42) { Value=Integer(1) link(onNextCase,7265793:doCase,[]) link(onTrue,11699894:doEvent,[(86,55)(86,97)]) AddHint(0,-28,22,14,Value) } Add(MultiElementEx,6289481,153,91) { @Hint=#10:Статистика| CodeType=1 } BEGIN_SDK Add(EditMultiEx,14133854,14,21) { WorkCount=#11:doForumInfo| Width=825 link(doForumInfo,10533550:doEvent,[(32,27)(32,55)]) } Add(Echo,10010437,245,175) { } Add(StringBuilder,1173537,161,175) { Mask="set\ttext\tf_main_body\t%posts%\t%users%\t%lastu%\t%files%\t%fsize%Mb\t%on_guests%\t%on_users%\t%time%\r\nfadd\t\tf_main_begin\r\n" Args=#17:Mask=Маска строки|5:posts|5:users|5:lastu|5:files|5:fsize|9:on_guests|8:on_users|4:time| link(onBuild,10010437:doEcho,[]) link(posts,10288705:Result,[(174,128)(167,128)]) link(users,7018445:Result,[(181,128)(265,128)]) link(lastu,12753714:Result,[(188,128)(363,128)]) link(files,14247236:Result,[(195,128)(461,128)]) link(fsize,11082901:Var1,[(202,128)(608,128)]) link(on_guests,12408873:Result,[(209,128)(706,128)]) link(on_users,3234505:Result,[(216,128)(804,128)]) } Add(Hub,10533550,56,49) { link(onEvent1,11261971:doQuery,[]) link(onEvent2,1166771:doFormat,[(97,62)(97,181)]) } Add(mysql_query,11261971,112,49) { SQL="SELECT COUNT(*) FROM $db_posts" link(onQuery,10288705:doResult,[]) } Add(mysql_result,10288705,161,49) { Index=0 link(onResult,7957802:doQuery,[]) } Add(mysql_query,7957802,210,49) { SQL="SELECT COUNT(*) FROM $db_users" link(onQuery,7018445:doResult,[]) } Add(mysql_result,7018445,259,49) { Index=0 link(onResult,16727392:doQuery,[]) } Add(mysql_query,16727392,308,49) { SQL="SELECT name FROM $db_users ORDER BY user_id DESC" link(onQuery,12753714:doResult,[]) } Add(mysql_result,12753714,357,49) { Index=0 link(onResult,944658:doQuery,[]) } Add(mysql_query,944658,406,49) { SQL="SELECT COUNT(*) FROM hiasm_attach" link(onQuery,14247236:doResult,[]) } Add(mysql_result,14247236,455,49) { Index=0 link(onResult,2969953:doQuery,[]) } Add(mysql_query,2969953,504,49) { SQL="SELECT value FROM hiasm_data WHERE id = 1" link(onQuery,14979753:doResult,[]) } Add(mysql_result,14979753,553,49) { Index=0 link(onResult,11082901:doWork1,[]) } Add(MultiElement,11082901,602,49) { CodeType=1 link(onEvent1,11603313:doQuery,[]) } BEGIN_SDK Add(EditMulti,3523429,10,10) { EventCount=1 WorkCount=1 VarCount=1 link(doWork1,6725491:doOperation,[(33,27)(33,62)]) link(Var1,8535220:Result,[(27,155)(157,155)]) } Add(Math,6725491,46,56) { OpType=3 Op2=104857.6 Extern=1 link(onResult,5214585:doStrInt,[]) } Add(StrInt,5214585,98,56) { link(onStrInt,8535220:doOperation,[]) } Add(Math,8535220,151,56) { OpType=3 Op2=10 Extern=1 link(onResult,3523429:onEvent1,[(252,62)(252,27)]) } END_SDK Add(mysql_query,11603313,651,49) { SQL="SELECT COUNT(*) FROM $db_sessions WHERE user_id = -1 GROUP BY ip" link(onQuery,12408873:doNumRows,[]) } Add(mysql_query,10983207,749,49) { SQL="SELECT user_id FROM $db_sessions WHERE user_id <> -1 GROUP BY user_id" link(onQuery,3234505:doNumRows,[]) } Add(mysql_num_rows,3234505,798,49) { } Add(FormatTime,1166771,113,175) { Mask="%d %b %Y %H:%M" link(onFormat,1173537:doBuild,[]) link(Time,1166771:ServerTime,[(119,163)(101,163)(101,218)(126,218)]) } Add(mysql_num_rows,12408873,700,49) { link(onNumRows,10983207:doQuery,[]) } END_SDK Add(Hub,11699894,97,91) { OutCount=9 link(onEvent1,6289481:doForumInfo,[]) link(onEvent2,10559183:doQuery,[(142,104)(142,146)]) link(onEvent3,8398318:doCompare,[(142,111)(142,237)]) link(onEvent4,190319:doQuery,[(142,118)(142,286)]) link(onEvent5,6122959:doEcho,[(142,125)(142,335)]) link(onEvent6,3744089:doPrint,[(142,132)(142,412)]) link(onEvent7,12126372:doStrCat,[(141,139)(141,475)]) link(onEvent8,12968062:doQuery,[(141,146)(141,531)]) link(onEvent9,730169:doQuery,[(132,153)(132,587)]) } Add(mysql_query,10559183,153,140) { SQL="SELECT f.*, $db_posts.time, IF($db_posts.user = -1, $db_posts.guest, $db_users.name) AS uname FROM $db_forums f LEFT JOIN $db_posts ON (f.last_post = $db_posts.post_id) LEFT JOIN $db_users ON ($db_posts.user = $db_users.user_id) ORDER BY `order`" link(onQuery,8987857:doNumRows,[]) } Add(mysql_num_rows,8987857,209,140) { link(onNumRows,6592113:doFor,[]) } Add(For,6592113,265,140) { link(onEvent,13097961:doFetchArray,[]) link(onStop,34552:doEcho,[(310,153)(310,195)]) } Add(mysql_fetch_array,13097961,321,140) { link(onFetchArray,12598403:doEvent,[]) link(Query,10559183:Result,[(327,118)(252,118)(252,180)(159,180)]) } Add(IndexToChanel,10326505,489,189) { Count=5 link(onEvent1,3900895:doWork2,[]) link(onEvent2,14587458:doBuild,[(534,202)(534,244)]) link(onEvent3,3606231:doBuild,[(534,209)(534,286)]) link(onEvent4,14517745:doBuild,[(534,216)(534,314)]) link(onEvent5,3900895:doWork3,[(535,223)]) } Add(ArrayItem,4439609,433,189) { Name="type" link(onGet,10326505:doEvent,[]) } Add(MultiElementEx,14587458,545,238) { @Hint=#13:Раздел форума| CodeType=1 link(title,5122226:Var3,[(551,226)]) } BEGIN_SDK Add(EditMultiEx,10646376,21,21) { WorkCount=#7:doBuild| DataCount=#5:title| link(doBuild,2444816:doBuild,[(35,27)(35,132)]) } Add(StringBuilder,2444816,56,126) { Mask="fadd\t \tf_main_group\t%title%\t%id%\r\n" Args=#17:Mask=Маска строки|5:title|2:id| link(onBuild,9606558:doEcho,[]) link(title,7373079:Get,[]) link(id,4230463:Get,[(76,114)(111,114)]) } Add(Echo,9606558,105,126) { } Add(ArrayItem,7373079,63,70) { Name="name" link(Array,10703815:Var2,[]) } Add(ArrayItem,4230463,105,70) { Name="forum_id" link(Array,10703815:Var3,[(111,58)]) } Add(GetDataEx,10703815,63,53) { link(Data,10646376:title,[(69,37)(27,37)]) } END_SDK Add(MultiElementEx,2535419,545,189) { @Hint=#5:Форум| CodeType=1 link(Array,5122226:Var1,[(551,177)(474,177)]) link(img,11259459:Var1,[(558,184)]) } BEGIN_SDK Add(EditMultiEx,3903265,21,21) { WorkCount=#7:doBuild| DataCount=#5:Array|3:img| Width=440 Height=144 link(doBuild,10736018:doGet,[(45,27)(45,118)]) } Add(StringBuilder,2444816,168,112) { Mask="fadd\t \tf_main_forum\t%img%\t%title%\t%info%\t%topics%\t%posts%\t%uname%\t%time%\t%forum%\r\n" Args=#17:Mask=Маска строки|5:title|4:info|6:topics|5:posts|5:uname|4:time|5:forum|3:img| link(onBuild,9606558:doEcho,[]) link(title,7373079:Get,[(181,100)(174,100)]) link(info,10769335:Get,[(188,100)(223,100)]) link(topics,7622998:Get,[(195,100)(272,100)]) link(posts,16381818:Get,[(202,100)(321,100)]) link(uname,13473853:Get,[(209,100)(370,100)]) link(forum,14325317:Get,[(223,100)(419,100)]) link(img,3903265:img,[(230,92)(34,92)]) } Add(Echo,9606558,245,112) { } Add(ArrayItem,7373079,168,56) { Name="name" link(Array,16434118:Var2,[]) } Add(ArrayItem,10769335,217,56) { Name="info" link(Array,10940881:Var2,[]) } Add(GetDataEx,16434118,168,39) { Angle=3 link(Data,16609714:Var3,[]) } Add(ArrayItem,7622998,266,56) { Name="topics" link(Array,3936184:Var2,[]) } Add(ArrayItem,16381818,315,56) { Name="posts" link(Array,5968363:Var2,[]) } Add(GetDataEx,10940881,217,39) { Angle=3 link(Data,16434118:Var3,[]) } Add(GetDataEx,3936184,266,39) { Angle=3 link(Data,10940881:Var3,[]) } Add(ArrayItem,13473853,364,56) { Name="uname" link(Array,10690040:Var2,[]) } Add(GetDataEx,5968363,315,39) { Angle=3 link(Data,3936184:Var3,[]) } Add(FormatTime,1166771,119,112) { Mask="%d %b %Y %H:%M" link(onFormat,2444816:doBuild,[]) } Add(ArrayItem,10736018,70,112) { Name="time" link(onGet,1166771:doFormat,[]) link(Array,16609714:Var2,[]) } Add(GetDataEx,16609714,70,39) { Angle=3 link(Data,3903265:Array,[(27,44)]) } Add(ArrayItem,14325317,413,56) { Name="forum_id" link(Array,10690040:Var3,[(419,44)]) } Add(GetDataEx,10690040,364,39) { Angle=3 link(Data,5968363:Var3,[]) } END_SDK Add(Echo,34552,321,189) { Message="flush\tf_body\r\n" } Add(GetDataEx,5122226,468,221) { Angle=3 link(Data,13097961:Result,[(375,226)(375,178)(327,178)]) } Add(Echo,13142156,202,231) { Message="hide\tlogin_form\r\nshow\tluser\r\n" link(onEcho,1363866:doBuild,[]) } Add(SessionVar,5443535,153,189) { Name="ss" } Add(If_else,8398318,153,231) { link(onTrue,13142156:doEcho,[]) link(Op1,5443535:IsRegistered,[]) } Add(mysql_query,190319,153,280) { SQL="SELECT u.name, u.rank FROM $db_sessions s, $db_users u WHERE s.user_id <> -1 AND s.user_id = u.user_id GROUP BY s.user_id" link(onQuery,12207196:doNumRows,[]) } Add(mysql_num_rows,12207196,202,280) { link(onNumRows,2812482:doFor,[]) } Add(For,2812482,258,280) { link(onEvent,9824908:doEvent,[]) link(onStop,8646523:doEcho,[(307,293)(307,335)]) } Add(mysql_fetch_row,13890741,377,329) { link(onFetchRow,16485036:doRead,[]) link(Query,190319:Result,[(383,321)(159,321)]) } Add(StringBuilder,12830512,489,329) { Mask="fadd\t\tf_main_link%lnk%\t%delim%%name%\r\n" Args=#17:Mask=Маска строки|4:name|5:delim|3:lnk| link(onBuild,8738936:doEcho,[]) link(delim,4359216:Value,[(509,321)(495,321)]) link(lnk,7863044:Item,[(516,317)(531,317)(531,422)(439,422)]) } Add(ArrayRead,16485036,433,329) { Index=0 link(onRead,12830512:doBuild,[]) } Add(Echo,8646523,321,329) { Message="flush\tonline\r\n" } Add(Echo,8738936,545,329) { } Add(If_else,2058797,377,280) { link(onTrue,8022516:doData,[]) } Add(Hub,9824908,321,280) { link(onEvent1,2058797:doCompare,[]) link(onEvent2,13890741:doFetchRow,[(366,293)(366,335)]) } Add(Memory,4359216,489,280) { } Add(DoData,8022516,433,280) { Data=String(, ) link(onEventData,4359216:doValue,[]) } Add(MultiElementEx,3606231,545,280) { @Hint=#5:Личка| CodeType=1 link(Array,16155880:Var2,[]) link(img,6400219:Var1,[(558,268)]) } BEGIN_SDK Add(EditMultiEx,3903265,21,21) { WorkCount=#7:doBuild| DataCount=#5:Array|3:img| Width=853 Height=228 link(doBuild,13340719:doCompare,[(41,27)(41,132)]) } Add(StringBuilder,2444816,742,126) { Mask="fadd\t \tf_main_forum\t%img%\t%title%\t%info%\t%topics%\t%posts%\t%uname%\t%time%\t%forum%\r\n" Args=#17:Mask=Маска строки|5:title|4:info|6:topics|5:posts|5:uname|4:time|5:forum|3:img| link(onBuild,15297005:doWork2,[]) link(title,4266048:Var3,[(755,114)]) link(info,2281136:Var3,[(762,107)]) link(topics,3015627:Result,[(769,98)(341,98)(341,170)(307,170)]) link(posts,10109937:Result,[(776,90)(487,90)(487,170)(454,170)]) link(uname,93307:Item,[]) link(forum,14325317:Get,[(797,114)(822,114)]) link(img,3903265:img,[(804,25)(34,25)]) } Add(Echo,9606558,833,126) { } Add(ArrayItem,7373079,119,63) { Name="name" link(Array,16434118:Var2,[]) } Add(ArrayItem,10769335,161,63) { Name="info" link(Array,460652:Var2,[]) } Add(GetDataEx,16434118,119,48) { Angle=3 link(Data,3903265:Array,[(27,53)]) } Add(GetDataEx,2281136,161,102) { link(Data,10769335:Get,[]) } Add(GetDataEx,4266048,119,109) { link(Data,7373079:Get,[]) } Add(If_else,13340719,70,126) { Type=4 Op2=Integer(1) link(onTrue,8211466:doStrCat,[]) link(onFalse,5859864:doBuild,[(107,139)(107,188)]) link(Op1,9513095:Get,[]) } Add(ArrayItem,9513095,70,63) { Name="rank" link(Array,4794902:Var2,[]) } Add(StringBuilder,5859864,112,182) { Mask="fadd\t \tf_main_forum\tnorm\t%title%\t%info%\t-\t-\t-\t\t0\r\n" Args=#17:Mask=Маска строки|5:title|4:info| link(onBuild,15297005:doWork3,[(816,188)]) link(title,4266048:Var2,[]) link(info,2281136:Var1,[(132,107)]) } Add(GlobalVar,12905387,70,28) { Name="udata" } Add(FormatTime,1166771,693,126) { Mask="%d %b %Y %H:%M" link(onFormat,2444816:doBuild,[]) } Add(StrCat,8211466,203,126) { Str1="SELECT COUNT(*) FROM $db_pms WHERE user_id = " link(onStrCat,5025471:doQuery,[]) link(Str2,8424199:Var2,[]) } Add(HubEx,15297005,812,126) { link(onEvent,9606558:doEcho,[]) } Add(mysql_query,5025471,252,126) { link(onQuery,3015627:doResult,[]) } Add(mysql_result,3015627,301,126) { Index=0 link(onResult,5729739:doStrCat,[]) } Add(StrCat,5729739,350,126) { Str1="select sum($db_topics.posts) from $db_pms,$db_topics where $db_pms.topic_id = $db_topics.topic_id and $db_pms.user_id = " link(onStrCat,7951265:doQuery,[]) link(Str2,3043093:Var2,[]) } Add(mysql_query,7951265,399,126) { link(onQuery,10109937:doResult,[]) } Add(mysql_result,10109937,448,126) { Index=0 link(onResult,7718375:doBuild,[]) } Add(ArrayItem,1230134,210,63) { Name="user_id" link(Array,4794902:Var3,[(216,48)]) } Add(GetDataEx,4794902,70,43) { link(Data,12905387:Var,[(72,42)]) } Add(GetDataEx,8424199,210,114) { link(Data,1230134:Get,[]) } Add(mysql_query,8019747,546,126) { link(onQuery,14114674:doFetchRow,[]) } Add(StringBuilder,7718375,497,126) { Mask="SELECT t.last_post, u.name, p.time FROM $db_pms pm, $db_topics t, $db_posts p, $db_users u WHERE pm.topic_id = t.topic_id AND t.last_post = p.post_id AND u.user_id = p.user AND pm.user_id = %user_id% ORDER BY p.time DESC LIMIT 0,1" Args=#17:Mask=Маска строки|7:user_id| link(onBuild,8019747:doQuery,[]) link(user_id,3043093:Var3,[(510,119)]) } Add(mysql_fetch_row,14114674,595,126) { link(onFetchRow,4116638:doRead,[]) } Add(ArrayRead,4116638,644,126) { Index=2 link(onRead,1166771:doFormat,[]) } Add(ArrayRead,93307,777,63) { Index=1 link(Array,14114674:Result,[(783,57)(635,57)(635,171)(601,171)]) } Add(GetDataEx,3043093,357,114) { Angle=3 link(Data,8424199:Var3,[(293,119)(293,119)]) } Add(ArrayItem,14325317,816,70) { Name="forum_id" link(Array,460652:Var3,[(822,53)]) } Add(GetDataEx,460652,161,48) { Angle=3 link(Data,16434118:Var3,[]) } END_SDK Add(HubEx,3900895,531,189) { link(onEvent,2535419:doBuild,[]) } Add(MultiElementEx,14517745,587,308) { @Hint=#9:Избранное| CodeType=1 link(Array,16155880:Var3,[(593,275)]) link(img,6400219:Var2,[]) } BEGIN_SDK Add(EditMultiEx,3903265,21,21) { WorkCount=#7:doBuild| DataCount=#5:Array|3:img| Width=853 Height=228 link(doBuild,13340719:doCompare,[(41,27)(41,132)]) } Add(StringBuilder,2444816,742,126) { Mask="fadd\t \tf_main_forum\t%img%\t%title%\t%info%\t%topics%\t%posts%\t%uname%\t%time%\t%forum%\r\n" Args=#17:Mask=Маска строки|5:title|4:info|6:topics|5:posts|5:uname|4:time|5:forum|3:img| link(onBuild,15297005:doWork2,[]) link(title,4266048:Var3,[(755,114)]) link(info,2281136:Var3,[(762,107)]) link(topics,3015627:Result,[(769,98)(341,98)(341,170)(307,170)]) link(posts,10109937:Result,[(776,90)(487,90)(487,170)(454,170)]) link(uname,93307:Item,[]) link(forum,14325317:Get,[(797,114)(826,114)]) link(img,3903265:img,[(804,25)(34,25)]) } Add(Echo,9606558,826,126) { } Add(ArrayItem,7373079,119,63) { Name="name" link(Array,16434118:Var2,[]) } Add(ArrayItem,10769335,161,63) { Name="info" link(Array,8303986:Var2,[]) } Add(GetDataEx,16434118,119,48) { Angle=3 link(Data,3903265:Array,[(27,53)]) } Add(GetDataEx,2281136,161,102) { link(Data,10769335:Get,[]) } Add(GetDataEx,4266048,119,109) { link(Data,7373079:Get,[]) } Add(If_else,13340719,70,126) { Type=4 Op2=Integer(1) link(onTrue,8211466:doStrCat,[]) link(onFalse,5859864:doBuild,[(107,139)(107,188)]) link(Op1,9513095:Get,[]) } Add(ArrayItem,9513095,70,63) { Name="rank" link(Array,4794902:Var2,[]) } Add(StringBuilder,5859864,112,182) { Mask="fadd\t \tf_main_forum\tnorm\t%title%\t%info%\t-\t-\t-\t\t0\r\n" Args=#17:Mask=Маска строки|5:title|4:info| link(onBuild,15297005:doWork3,[(816,188)]) link(title,4266048:Var2,[]) link(info,2281136:Var1,[(132,107)]) } Add(GlobalVar,12905387,70,28) { Name="udata" } Add(FormatTime,1166771,693,126) { Mask="%d %b %Y %H:%M" link(onFormat,2444816:doBuild,[]) } Add(StrCat,8211466,203,126) { Str1="SELECT COUNT(*) FROM $db_fvrt WHERE user_id = " link(onStrCat,5025471:doQuery,[]) link(Str2,8424199:Var2,[]) } Add(HubEx,15297005,812,126) { link(onEvent,9606558:doEcho,[]) } Add(mysql_query,5025471,252,126) { link(onQuery,3015627:doResult,[]) } Add(mysql_result,3015627,301,126) { Index=0 link(onResult,5729739:doStrCat,[]) } Add(StrCat,5729739,350,126) { Str1="select sum($db_topics.posts) from $db_fvrt,$db_topics where $db_fvrt.topic_id = $db_topics.topic_id and $db_fvrt.user_id = " link(onStrCat,7951265:doQuery,[]) link(Str2,14001322:Var2,[]) } Add(mysql_query,7951265,399,126) { link(onQuery,10109937:doResult,[]) } Add(mysql_result,10109937,448,126) { Index=0 link(onResult,7718375:doBuild,[]) } Add(ArrayItem,1230134,210,63) { Name="user_id" link(Array,4794902:Var3,[(216,48)]) } Add(GetDataEx,4794902,70,43) { link(Data,12905387:Var,[(72,42)]) } Add(GetDataEx,8424199,210,114) { link(Data,1230134:Get,[]) } Add(mysql_query,8019747,546,126) { link(onQuery,14114674:doFetchRow,[]) } Add(StringBuilder,7718375,497,126) { Mask="SELECT t.last_post, IF(p.user = -1, p.guest, u.name) AS name, p.time FROM $db_fvrt f, $db_topics t, $db_posts p, $db_users u WHERE f.topic_id = t.topic_id AND t.last_post = p.post_id AND u.user_id = p.user AND f.user_id = %user_id% ORDER BY p.time DESC LIMIT 0,1" Args=#17:Mask=Маска строки|7:user_id| link(onBuild,8019747:doQuery,[]) link(user_id,14001322:Var3,[(510,119)]) } Add(mysql_fetch_row,14114674,595,126) { link(onFetchRow,4116638:doRead,[]) } Add(ArrayRead,4116638,644,126) { Index=2 link(onRead,1166771:doFormat,[]) } Add(ArrayRead,93307,777,63) { Index=1 link(Array,14114674:Result,[(783,56)(635,56)(635,171)(601,171)]) } Add(GetDataEx,14001322,357,114) { Angle=3 link(Data,8424199:Var3,[]) } Add(ArrayItem,14325317,820,63) { Name="forum_id" link(Array,8303986:Var3,[(826,53)]) } Add(GetDataEx,8303986,161,48) { Angle=3 link(Data,16434118:Var3,[]) } END_SDK Add(GetDataEx,16155880,545,270) { Angle=3 link(Data,5122226:Var2,[(474,275)]) } Add(Echo,6122959,153,329) { Message="set\tf_top_menu\tf_main_menu\t\r\nset\tf_top_menu1\tf_main_menu\t" } Add(Hub,12598403,377,140) { link(onEvent1,3656807:doGet,[]) link(onEvent2,4439609:doGet,[(422,153)(422,195)]) } Add(ArrayItem,3656807,433,140) { Name="forum_id" link(onGet,12490535:doCompare,[]) } Add(ArrayItem,684118,489,84) { Name="user_id" link(Array,2046626:Var2,[]) } Add(If_else,12490535,489,140) { Type=2 Op2=Integer(0) link(onTrue,2478987:doBuild,[]) link(Op1,12061760:Var2,[]) } Add(GlobalVar,6167619,489,49) { Name="udata" } Add(StringBuilder,2478987,545,140) { Mask="SELECT COUNT(*) FROM $db_new_posts WHERE forum_id = %forum% AND user_id = %user%" Args=#17:Mask=Маска строки|5:forum|4:user| link(onBuild,12913264:doQuery,[]) link(user,5763498:Var2,[(565,136)(565,136)]) } Add(GetDataEx,12061760,489,123) { link(Data,684118:Get,[]) } Add(mysql_query,12913264,601,140) { link(onQuery,16514706:doResult,[]) } Add(mysql_result,16514706,657,140) { Index=0 link(onResult,7536838:doCompare,[]) } Add(Memory,755010,811,140) { Default=String(norm) } Add(If_else,7536838,713,140) { link(onTrue,785595:doData,[]) link(onFalse,755010:doClear,[]) } Add(DoData,785595,762,140) { Data=String(new) link(onEventData,755010:doValue,[]) } Add(GetDataEx,11259459,594,179) { Angle=1 link(Data,755010:Value,[(817,184)]) } Add(GetDataEx,6400219,594,263) { link(Data,11259459:Var2,[]) } Add(CallFunc,3744089,153,406) { Args=1 Name="ss_info" link(onPrint,6423112:doCompare,[(851,412)(851,146)]) link(Arg1,3769232:Text,[]) } Add(VisualText,3769232,153,378) { Lines=#23:Просмотр списка форумов| Width=151 Point(Text) } Add(If_else,6423112,860,140) { Op2=Integer(3) link(onTrue,11423770:doQuery,[]) link(Op1,5763498:Var3,[(866,128)]) } Add(GetDataEx,5763498,559,123) { Angle=3 link(Data,12061760:Var3,[]) } Add(mysql_query,11423770,909,140) { SQL="SELECT pt.text, p.post_id FROM $db_posts p, $db_posts_text pt WHERE p.post_id = pt.post AND LENGTH(pt.text) > 3 AND p.post_id NOT IN (SELECT post_id FROM $db_word_post) LIMIT 0,1" link(onQuery,10366056:doNumRows,[]) } Add(mysql_fetch_row,11644890,1056,140) { link(onFetchRow,15500416:doRead,[]) link(Query,11423770:Result,[(1062,128)(996,128)(996,184)(915,184)]) } Add(ArrayRead,15500416,1105,140) { Index=1 link(onRead,9445462:doPrint,[]) } Add(CallFunc,9445462,1154,140) { Args=2 Name="post_indexer" link(Arg1,13502768:Item,[]) } Add(ArrayRead,13502768,1154,91) { Index=0 link(Array,11644890:Result,[(1160,79)(1096,79)(1096,184)(1062,184)]) } Add(For,10354820,1007,140) { link(onEvent,11644890:doFetchRow,[]) } Add(mysql_num_rows,10366056,958,140) { link(onNumRows,10354820:doFor,[]) } Add(Echo,15115456,202,469) { } Add(StrCat,12126372,153,469) { Str1="\r\nset\tver\tself_data\tv1." link(onStrCat,15115456:doEcho,[]) link(Str2,1641346:Data1,[(166,452)(19,452)]) } Add(Case,7265793,153,42) { Value=Integer(22) link(onNextCase,10283963:doCase,[]) link(onTrue,1927281:doReadAll,[(197,55)(197,97)]) AddHint(-3,-28,29,14,Value) } Add(MultiElementEx,1927281,209,91) { @Hint=#12:Прочесть все| } BEGIN_SDK Add(EditMultiEx,9080869,21,21) { WorkCount=#9:doReadAll| Width=237 link(doReadAll,518251:doInline,[(35,27)(35,132)]) } Add(If_else,11598165,98,126) { Type=2 Op2=Integer(0) link(onTrue,10823007:doStrCat,[]) link(onFalse,12180765:doEcho,[(138,139)(138,174)]) link(Op1,16393823:Var2,[]) } Add(Inline,518251,49,126) { InlineCode=#21:global $db_new_posts;| link(onInline,11598165:doCompare,[]) } Add(GlobalVar,5051067,98,49) { Name="udata" } Add(ArrayItem,2800253,98,77) { Name="user_id" link(Array,5051067:Var,[]) } Add(Echo,12180765,147,168) { Message="mes\tДанная функция доступна только зарегистрированным пользователям\r\n" } Add(StrCat,10823007,147,126) { Str1="DELETE FROM $db_new_posts WHERE user_id = " link(onStrCat,2814432:doExec,[(187,132)(187,139)]) link(Str2,16393823:Var3,[(160,114)]) } Add(GetDataEx,16393823,98,109) { link(Data,2800253:Get,[]) } Add(mysql_query,2814432,196,126) { } END_SDK Add(ArrayRead,7863044,433,378) { Index=1 link(Array,13890741:Result,[(439,370)(383,370)]) } Add(StringBuilder,1363866,258,231) { Mask="set\tluser\tluser\t%name%\t%uid%\r\n" Args=#17:Mask=Маска строки|4:name|3:uid| link(onBuild,3558462:doEcho,[]) link(name,10484855:Get,[(271,186)(362,186)]) link(uid,12061760:Var1,[(278,128)]) } Add(Echo,3558462,321,231) { } Add(ArrayItem,10484855,356,91) { Name="name" link(Array,2046626:Var1,[(362,72)]) } Add(GetDataEx,2046626,489,67) { link(Data,6167619:Var,[]) } Add(Case,10283963,209,42) { Value=Integer(45) link(onNextCase,8311990:doCase,[]) link(onTrue,3435358:doShowWiki,[(253,55)(253,97)]) AddHint(-3,-28,29,14,Value) } Add(MultiElementEx,3435358,265,91) { @Hint=#14:Статья из wiki| link(wiki_post,13675991:Get,[(271,83)(278,83)]) } BEGIN_SDK Add(EditMultiEx,4421840,21,21) { WorkCount=#10:doShowWiki| DataCount=#9:wiki_post| Width=419 link(doShowWiki,6132206:doBuild,[(35,27)(35,90)]) } Add(StringBuilder,6132206,49,84) { Mask="./wiki/%post%.txt" Args=#17:Mask=Маска строки|4:post| link(onBuild,8290534:doOpen,[]) link(post,4421840:wiki_post,[(62,52)(27,52)]) } Add(File,8290534,98,84) { Mode="r" AutoClose=1 Point(Size) link(onOpen,53553:doRead,[]) } Add(FileRead,53553,147,84) { link(onRead,13659626:doReplace,[]) link(Length,8290534:Size,[(160,72)(136,72)(136,128)(111,128)]) } Add(Replace,13659626,196,84) { SubStr="\t" DestStr="[tab]" link(onReplace,2213342:doReplace,[]) } Add(Replace,2213342,245,84) { SubStr="\r\n" DestStr="\n" link(onReplace,1368971:doBuild,[]) } Add(StringBuilder,1368971,294,84) { Mask="set\tpbody\tbb_data\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,452976:doEcho,[]) } Add(Echo,452976,343,84) { } Add(StringBuilder,16017080,98,147) { Mask="set\tpbody\tbb_data\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,2830769:doEcho,[]) } Add(Echo,2830769,147,147) { } END_SDK Add(Vars,13675991,265,42) { Name="p" Point(Get) } Add(Echo,4996952,398,525) { } Add(StringBuilder,8342247,349,525) { Mask="\r\nset\tmess\tf_rating_inf\t%total%\t%name%\t%id%\r\n" Args=#17:Mask=Маска строки|4:name|5:total|2:id| link(onBuild,4996952:doEcho,[]) link(name,4074853:Get,[(362,517)(355,517)]) link(total,6176262:Get,[(369,517)(397,517)]) link(id,15975562:Get,[(376,517)(446,517)]) } Add(mysql_query,12968062,153,525) { SQL="select u.name, p.user, sum(r.score) as total from hiasm_prating r, hiasm_posts p, hiasm_users u where p.post_id = r.post_id and r.time > UNIX_TIMESTAMP()-3600*24 and u.user_id = p.user and u.level = 0 group by p.user order by total desc limit 1" link(onQuery,13135061:doNumRows,[]) } Add(mysql_num_rows,13135061,202,525) { link(onNumRows,13687931:doCompare,[]) } Add(If_else,13687931,251,525) { link(onTrue,4674687:doFetchArray,[]) } Add(mysql_fetch_array,4674687,300,525) { link(onFetchArray,8342247:doBuild,[]) link(Query,12968062:Result,[(306,513)(241,513)(241,564)(159,564)]) } Add(ArrayItem,4074853,349,476) { Name="name" link(Array,411106:Var2,[]) } Add(ArrayItem,6176262,391,476) { Name="total" link(Array,7136758:Var2,[]) } Add(GetDataEx,411106,349,459) { Angle=3 link(Data,4674687:Result,[(328,464)(328,569)(306,569)]) } Add(ArrayItem,15975562,440,476) { Name="user" link(Array,7136758:Var3,[(446,464)]) } Add(GetDataEx,7136758,391,459) { Angle=3 link(Data,411106:Var3,[]) } Add(Case,8311990,314,42) { Value=Integer(50) link(onNextCase,1641346:onEvent1,[(772,48)(772,19)]) link(onTrue,16756631:doPrintRating,[(399,55)(399,97)]) AddHint(-2,-28,29,14,Value) } Add(MultiElementEx,16756631,412,91) { @Hint=#15:Вывод рейтингов| } BEGIN_SDK Add(EditMultiEx,3359870,21,21) { WorkCount=#13:doPrintRating| Width=426 Height=305 link(doPrintRating,508953:doMakeManager,[(49,27)(49,104)]) } Add(DataManager,508953,77,98) { DataSource="rating" link(onHeader,12617510:doPrint,[]) link(onItem,4295503:doPrint,[(121,111)(121,195)]) link(onFooter,12621539:doPrint,[(121,139)(121,237)]) } Add(DS_MySQL,16264117,77,42) { Name="rating" SelectState="select u.name, p.user, sum(r.score) as total from hiasm_prating r, hiasm_posts p, hiasm_users u where r.time > UNIX_TIMESTAMP()-3600*24 and p.post_id = r.post_id and u.user_id = p.user group by p.user order by total desc" KeyField="user" } Add(HTM_Table,12617510,133,98) { Style="border: 1px solid gray; background-color: white; " PrintMode=1 link(onPrint,7503490:doPrint,[]) } Add(HTM_Tr,4295503,133,189) { Style="background-color: #eeeeee; " link(onPrint,8041114:doEvent,[]) } Add(HTM_Table,12621539,133,231) { PrintMode=1 } Add(Hub,8041114,182,189) { link(onEvent1,6878802:doPrint,[]) link(onEvent2,2193053:doPrint,[(222,202)(222,237)]) } Add(HTM_Td,6878802,231,189) { link(onPrint,12472595:doPrint,[]) } Add(HTM_Td,2193053,231,231) { Style="text-align: center;" link(onPrint,10012767:doPrint,[]) } Add(DM_Label,12472595,280,189) { DataBind="name" } Add(DM_Label,10012767,280,231) { DataBind="total" } Add(HTM_Tr,7503490,182,98) { Style="background-color: #eeeeee; " link(onPrint,16022530:doEvent,[]) } Add(Hub,16022530,231,98) { link(onEvent1,6592831:doPrint,[]) link(onEvent2,2528407:doPrint,[(271,111)(271,146)]) } Add(Echo,6259796,329,98) { Message="Имя" } Add(Echo,12028645,329,140) { Message="Очки" } Add(HTM_Th,6592831,280,98) { link(onPrint,6259796:doEcho,[]) } Add(HTM_Th,2528407,280,140) { Style="width: 30px;" link(onPrint,12028645:doEcho,[]) } END_SDK Add(mysql_fetch_row,5968822,377,630) { link(onFetchRow,15661040:doRead,[]) link(Query,730169:Result,[(383,622)(159,622)]) } Add(StringBuilder,14302316,489,630) { Mask="fadd\t\tf_main_link%lnk%\t%delim% %name%\r\n" Args=#17:Mask=Маска строки|4:name|5:delim|3:lnk|5:state| link(onBuild,1408719:doEcho,[]) link(delim,13992822:Value,[(509,622)(495,622)]) link(lnk,14445720:Item,[(516,619)(541,619)(541,723)(439,723)]) link(state,8756915:Item,[(523,624)(536,624)(536,719)(481,719)]) } Add(ArrayRead,15661040,433,630) { Index=0 link(onRead,14302316:doBuild,[]) } Add(Echo,11346247,321,630) { Message="flush\trooms\r\n" } Add(Echo,1408719,545,630) { } Add(ArrayRead,14445720,433,679) { Index=1 link(Array,14428715:Var2,[]) } Add(mysql_query,730169,153,581) { SQL="SELECT u.name, u.rank, s.state FROM hiasm_net_online s, hiasm_users u WHERE s.user = u.user_id" link(onQuery,11921379:doNumRows,[]) } Add(mysql_num_rows,11921379,202,581) { link(onNumRows,6925771:doFor,[]) } Add(For,6925771,258,581) { link(onEvent,7287731:doEvent,[]) link(onStop,11346247:doEcho,[(307,594)(307,636)]) } Add(If_else,16424243,377,581) { link(onTrue,11599510:doData,[]) } Add(Hub,7287731,321,581) { link(onEvent1,16424243:doCompare,[]) link(onEvent2,5968822:doFetchRow,[(366,594)(366,636)]) } Add(Memory,13992822,489,581) { } Add(DoData,11599510,433,581) { Data=String(, ) link(onEventData,13992822:doValue,[]) } Add(ArrayRead,8756915,475,679) { Index=2 link(Array,14428715:Var3,[(481,671)]) } Add(GetDataEx,14428715,433,666) { Angle=3 link(Data,5968822:Result,[(383,671)]) } END_SDK Add(MultiElement,16299581,315,161) { @Hint=#6:Топики| CodeType=1 link(onEvent1,13727163:doWork1,[]) AddHint(44,-101,57,14,@Hint) } BEGIN_SDK Add(EditMulti,6735203,14,14) { EventCount=1 WorkCount=1 Width=1308 Height=571 link(doWork1,3743794:doCase,[(28,20)(28,48)]) } Add(Case,3743794,42,42) { Value=Integer(2) link(onNextCase,3392669:doCase,[]) link(onTrue,11812984:doEvent,[(82,55)(82,97)]) AddHint(1,-27,22,14,Value) } Add(StringBuilder,10064003,336,413) { Mask="fadd\t\tself_data\t%name%\r\nflush\ttree\r\n" Args=#17:Mask=Маска строки|4:name| link(onBuild,11355738:doEcho,[]) } Add(Echo,13826204,483,364) { } Add(GetDataEx,9823428,175,221) { Angle=1 link(Data,1373277:Result,[(293,226)]) } Add(InfoTip,16630209,133,350) { Info=#4:Tree| Width=393 Height=102 } Add(Echo,11355738,385,413) { } Add(MultiElementEx,8323193,140,245) { @Hint=#20:Типы выборок топиков| CodeType=1 link(onQuery,8645987:doWork2,[]) link(type,6754433:Var2,[]) link(forum,9823428:Var1,[(153,226)]) link(start,14125506:Var1,[(160,233)]) } BEGIN_SDK Add(EditMultiEx,16341368,21,21) { WorkCount=#7:doEvent| EventCount=#7:onQuery| VarCount=#5:Pages| DataCount=#4:type|5:forum|5:start| Width=342 Height=354 link(doEvent,928360:doEvent,[(31,27)(31,153)]) link(Pages,2366046:Value,[(27,350)(321,350)]) } Add(StringBuilder,4284526,196,154) { Mask="SELECT t.topic_id, t.title, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, IF(p2.time > p2.edittime, p2.time, p2.edittime), t.type, t.status, t.forum FROM $db_topics t, $db_posts p1, $db_posts p2, $db_users u1, $db_users u2 WHERE t.forum = %forum% AND t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id ORDER BY t.type DESC, t.last_post DESC LIMIT %start%, 20" Args=#17:Mask=Маска строки|5:forum|5:start| link(onBuild,8185868:doWork2,[]) link(forum,15265128:Var3,[(209,128)]) link(start,6217088:Var2,[]) } Add(IndexToChanel,928360,49,147) { Count=5 link(Index,16341368:type,[(55,66)(27,66)]) link(onEvent1,6145538:doWork2,[]) link(onEvent3,4686743:doEvent,[(93,167)(93,223)]) link(onEvent4,12256483:doEvent,[(93,174)(93,293)]) link(onEvent5,6145538:doWork3,[(95,181)]) } Add(StringBuilder,4776067,217,224) { Mask="SELECT t.topic_id, t.title, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status, t.forum FROM $db_topics t, $db_posts p1, $db_posts p2, $db_users u1, $db_users u2, $db_pms pm WHERE pm.user_id = %user% AND t.topic_id = pm.topic_id AND t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id ORDER BY t.last_post DESC LIMIT %start%, 20" Args=#17:Mask=Маска строки|4:user|5:start| link(onBuild,13450643:doWork2,[]) link(user,10510104:Var2,[]) link(start,9854714:Var2,[]) } Add(GetDataEx,6217088,210,130) { link(Data,16341368:start,[(216,58)(41,58)]) } Add(GlobalVar,11510545,224,28) { Name="udata" } Add(ArrayItem,3610029,224,56) { Name="user_id" link(Array,11510545:Var,[]) } Add(StringBuilder,8082572,238,294) { Mask="SELECT t.topic_id, t.title, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status, t.forum FROM $db_topics t, $db_posts p1, $db_posts p2, $db_users u1, $db_users u2, $db_fvrt fv WHERE fv.user_id = %user% AND t.topic_id = fv.topic_id AND t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id ORDER BY t.last_post DESC LIMIT %start%, 20" Args=#17:Mask=Маска строки|4:user|5:start| link(onBuild,13450643:doWork3,[(291,300)]) link(user,7353409:Var2,[]) link(start,9854714:Var3,[(258,212)]) } Add(HubEx,8185868,287,154) { Angle=3 link(onEvent,16341368:onQuery,[(291,27)]) } Add(GetDataEx,16324415,224,109) { link(Data,3610029:Get,[]) } Add(HubEx,6145538,91,147) { link(onEvent,14963691:doEvent,[]) } Add(StringBuilder,5378383,140,147) { Mask="SELECT count(*) FROM $db_topics t, $db_forums f WHERE t.forum = %forum% AND f.forum_id = t.forum AND (f.type <> 2 OR t.topic_id IN (SELECT topic_id FROM $db_pms WHERE user_id = %user%))" Args=#17:Mask=Маска строки|5:forum|4:user| link(onBuild,10856817:doWork2,[]) link(forum,15265128:Var2,[]) link(user,16324415:Var1,[(160,114)]) } Add(Memory,2366046,315,147) { } Add(Hub,14963691,105,147) { link(onEvent1,5378383:doBuild,[]) link(onEvent2,4284526:doBuild,[]) } Add(HubEx,13450643,287,224) { Angle=3 link(onEvent,8185868:doWork3,[]) } Add(Hub,4686743,105,217) { link(onEvent1,11737363:doBuild,[]) link(onEvent2,4776067:doBuild,[]) } Add(StringBuilder,11737363,140,217) { Mask="SELECT count(*) FROM $db_pms WHERE user_id = %user% " Args=#17:Mask=Маска строки|4:user| link(onBuild,6095933:doWork2,[]) link(user,10510104:Var1,[(153,205)]) } Add(HubEx,10856817,182,147) { link(onEvent,2366046:doValue,[]) } Add(StringBuilder,4949003,140,287) { Mask="SELECT count(*) FROM $db_fvrt WHERE user_id = %user% " Args=#17:Mask=Маска строки|4:user| link(onBuild,6095933:doWork3,[(186,293)]) link(user,7353409:Var1,[(153,275)]) } Add(Hub,12256483,105,287) { link(onEvent1,4949003:doBuild,[]) link(onEvent2,8082572:doBuild,[]) } Add(HubEx,6095933,182,217) { Angle=3 link(onEvent,10856817:doWork3,[]) } Add(GetDataEx,15265128,147,123) { Angle=3 link(Data,16341368:forum,[(34,128)]) } Add(GetDataEx,9854714,231,207) { link(Data,6217088:Var3,[(237,135)]) } Add(GetDataEx,10510104,224,200) { link(Data,16324415:Var2,[]) } Add(GetDataEx,7353409,245,270) { link(Data,16324415:Var3,[(251,114)]) } Add(InfoTip,2977929,126,133) { Info=#14:обычные топики| VAlign=2 Width=155 Height=67 } Add(InfoTip,3564401,126,203) { Info=#5:личка| VAlign=2 Width=155 Height=67 } Add(InfoTip,855438,126,273) { Info=#9:избранное| VAlign=2 Width=155 Height=67 } END_SDK Add(Vars,2417218,280,140) { Name="f" Point(Get) } Add(StrInt,1373277,287,189) { link(Text,2417218:Get,[]) } Add(Vars,8113065,322,140) { Name="s" Point(Get) } Add(StrInt,8617973,329,189) { link(Text,8113065:Get,[]) } Add(MultiElementEx,5166233,238,245) { @Hint=#14:Список топиков| link(Type,6754433:Var3,[(251,233)]) } BEGIN_SDK Add(EditMultiEx,3903265,21,21) { WorkCount=#7:doBuild| DataCount=#5:Array|4:Type| Width=1035 Height=144 link(doBuild,518251:doInline,[(59,27)(59,62)]) } Add(StringBuilder,2444816,637,112) { Mask="call\taddtopic\t%type%\t%title%\t%pages%\t%posts%\t%author%\t%views%\t%uname%\t%time%\t%topic%\t%list%\t%disp%\t%start%\t%lock%\t%forum%\r\n" Args=#17:Mask=Маска строки|5:title|5:pages|5:posts|6:author|5:views|5:uname|4:time|5:topic|4:type|4:list|4:disp|5:start|4:lock|5:forum| link(onBuild,9606558:doEcho,[]) link(title,8055278:Result,[]) link(pages,3818438:Value,[(657,100)(447,100)]) link(posts,9621879:Result,[(664,100)(741,100)]) link(author,7622998:Get,[(671,100)(790,100)]) link(views,16381818:Get,[(678,100)(839,100)]) link(uname,13473853:Get,[(685,100)(888,100)]) link(topic,11956697:Var1,[(699,100)]) link(type,11532229:Var1,[(706,100)(496,100)]) link(list,13138267:Value,[(713,100)(594,100)]) link(disp,11532229:Var2,[(720,100)(503,100)]) link(start,11532229:Var3,[(727,100)(510,100)]) link(lock,12637172:Get,[(734,100)(986,100)]) link(forum,13783137:Get,[(741,100)(1035,100)]) } Add(Echo,9606558,763,112) { } Add(ArrayItem,7373079,637,56) { Name="title" link(Array,16434118:Var2,[]) } Add(ArrayItem,10769335,686,56) { Name="posts" link(Array,10940881:Var2,[]) } Add(GetDataEx,16434118,637,39) { Angle=3 link(Data,16609714:Var3,[]) } Add(ArrayItem,7622998,784,56) { Name="author" link(Array,3936184:Var2,[]) } Add(ArrayItem,16381818,833,56) { Name="views" link(Array,5968363:Var2,[]) } Add(GetDataEx,10940881,686,39) { Angle=3 link(Data,16434118:Var3,[]) } Add(GetDataEx,3936184,784,39) { Angle=3 link(Data,10940881:Var3,[]) } Add(ArrayItem,13473853,882,56) { Name="name" link(Array,10690040:Var2,[]) } Add(GetDataEx,5968363,833,39) { Angle=3 link(Data,3936184:Var3,[]) } Add(FormatTime,1166771,588,112) { Mask="%d %b %Y %H:%M" link(onFormat,2444816:doBuild,[]) } Add(ArrayItem,10736018,539,112) { Name="time" link(onGet,1166771:doFormat,[]) link(Array,16609714:Var2,[]) } Add(GetDataEx,16609714,539,39) { Angle=3 link(Data,5124079:Var3,[]) } Add(ArrayItem,14325317,931,56) { Name="topic_id" link(Array,11311365:Var2,[]) } Add(GetDataEx,10690040,882,39) { Angle=3 link(Data,5968363:Var3,[]) } Add(Hub,12447870,343,56) { OutCount=4 link(onEvent1,11532229:doWork1,[]) link(onEvent2,2833156:doCalc,[]) link(onEvent3,577291:doCompare,[(383,76)(383,118)]) link(onEvent4,10736018:doGet,[(457,83)(457,118)]) } Add(Memory,13138267,588,56) { Default=String() Extern=1 } Add(GetDataEx,14699014,686,91) { link(Data,10769335:Get,[]) } Add(Math,9621879,735,56) { OpType=1 Op2=1 link(Op1,14699014:Var3,[(741,50)(724,50)(724,96)]) } Add(Memory,3818438,441,63) { Default=Integer(0) Extern=1 } Add(MathParse,2833156,392,63) { DataCount=1 MathStr="(int)((%1-1) / 15) * 15" link(onResult,3818438:doValue,[]) link(X1,14699014:Var1,[(398,49)(677,49)(677,96)]) } Add(MultiElement,11532229,490,56) { CodeType=1 link(Data1,5124079:Var2,[]) } BEGIN_SDK Add(EditMulti,13177610,14,14) { WorkCount=1 DataCount=1 VarCount=3 Width=678 Height=354 VOffset=14 HOffset=14 link(doWork1,7855118:doCompare,[(25,34)(25,188)]) link(Var1,10042882:Result,[(34,341)(55,341)]) link(Var2,3424922:Result,[(41,350)(202,350)]) link(Var3,15164798:Value,[(48,358)(650,358)]) } Add(StringBuilder,8333870,98,182) { Mask="SELECT COUNT(*) FROM $db_new_posts WHERE user_id = %user% AND topic_id = %topic%" Args=#17:Mask=Маска строки|4:user|5:topic| link(onBuild,7432051:doQuery,[]) link(user,400964:Var2,[]) link(topic,9785972:Var2,[]) } Add(If_else,7855118,49,182) { Type=2 Op2=Integer(0) link(onTrue,8333870:doBuild,[]) link(Op1,16701663:Var2,[]) } Add(GlobalVar,5517971,49,91) { Name="udata" } Add(ArrayItem,13419743,49,126) { Name="user_id" link(Array,5517971:Var,[]) } Add(GetDataEx,16701663,49,165) { link(Data,13419743:Get,[]) } Add(mysql_query,7432051,147,182) { link(onQuery,3424922:doResult,[]) } Add(ArrayItem,10179899,112,77) { Name="topic_id" link(Array,11455574:Var3,[(118,65)]) } Add(mysql_result,3424922,196,182) { Index=0 link(onResult,1122230:doCompare,[]) } Add(If_else,1122230,245,182) { link(onTrue,1108087:doEvent,[(285,188)(285,146)]) link(onFalse,15574167:doClear,[]) } Add(Memory,15574167,392,182) { Default=String() Extern=1 } Add(DoData,1084832,343,182) { Data=String(_new) link(onEventData,15574167:doValue,[]) } Add(ArrayItem,13583109,49,238) { Name="type" link(Array,11455574:Var2,[(55,221)(34,221)]) } Add(StrCat,10042882,49,287) { link(Str1,13583109:Get,[]) link(Str2,15574167:Value,[(62,276)(398,276)]) } Add(Hub,1108087,294,140) { link(onEvent1,1084832:doData,[(334,146)(334,188)]) link(onEvent2,9385680:doBuild,[]) } Add(GetDataEx,9785972,112,116) { link(Data,10179899:Get,[]) } Add(GetDataEx,11455574,28,60) { link(Data,13177610:Data1,[]) } Add(GetDataEx,400964,105,165) { Angle=3 link(Data,16701663:Var3,[]) } Add(StringBuilder,9385680,455,147) { Mask="SELECT COUNT(*) FROM $db_posts WHERE topic = %topic% AND post_id <= (SELECT post_id FROM $db_new_posts WHERE user_id = %user% AND topic_id = %topic% ORDER BY post_id ASC LIMIT 0,1)" Args=#17:Mask=Маска строки|4:user|5:topic| link(onBuild,9004312:doQuery,[]) link(user,400964:Var1,[(468,128)(111,128)]) link(topic,9785972:Var3,[(475,121)]) } Add(Memory,15164798,644,147) { Default=Integer(0) } Add(mysql_query,9004312,504,147) { link(onQuery,5480988:doResult,[]) } Add(mysql_result,5480988,553,147) { Index=0 link(onResult,2833156:doCalc,[]) } Add(MathParse,2833156,595,147) { DataCount=1 MathStr="(int)((%1-1) / 15) * 15" link(onResult,15164798:doValue,[]) link(X1,5480988:Result,[(601,135)(590,135)(590,189)(559,189)]) } END_SDK Add(GetDataEx,11956697,917,95) { Angle=1 link(Data,14325317:Get,[(937,100)]) } Add(For,6592113,245,56) { link(onEvent,13097961:doFetchArray,[]) } Add(mysql_fetch_array,13097961,294,56) { link(onFetchArray,12447870:doEvent,[]) link(Query,10559183:Result,[(300,38)(233,38)(233,99)(153,99)]) } Add(Echo,34552,294,112) { Message="fadd\t\tf_forum_end\r\nflush\tf_f_body\r\n" } Add(mysql_query,10559183,147,56) { link(onQuery,8987857:doNumRows,[]) link(SQL,3903265:Array,[(153,38)(27,38)]) } Add(mysql_num_rows,8987857,196,56) { link(onNumRows,6592113:doFor,[]) } Add(Inline,518251,98,56) { InlineCode=#63:global $db_topics, $db_posts, $db_users, $db_pms,$db_new_posts;| link(onInline,10559183:doQuery,[]) } Add(If_else,577291,392,112) { Op2=Integer(2) link(onTrue,16352666:doBuild,[]) link(Op1,3903265:Type,[(398,103)(34,103)]) } Add(MultiElementEx,16352666,441,112) { @Hint=#11:Собеседники| CodeType=1 link(onRead,13138267:doValue,[(525,118)(525,62)]) link(topic,11956697:Var2,[(447,106)(923,106)]) } BEGIN_SDK Add(EditMultiEx,12764087,21,21) { WorkCount=#7:doBuild| EventCount=#6:onRead| DataCount=#5:topic| Width=573 Height=172 link(doBuild,7699628:doEvent,[(45,27)(45,83)]) } Add(StringBuilder,15733624,126,77) { Mask="SELECT u.name FROM $db_pms pm, $db_users u WHERE pm.user_id = u.user_id AND pm.topic_id = %topic%" Args=#17:Mask=Маска строки|5:topic| link(onBuild,6553231:doQuery,[]) link(topic,12764087:topic,[(139,46)(27,46)]) } Add(mysql_query,6553231,182,77) { link(onQuery,2350548:doNumRows,[]) } Add(mysql_num_rows,2350548,238,77) { link(onNumRows,16101254:doFor,[]) } Add(For,16101254,294,77) { link(onEvent,13224454:doFetchRow,[]) link(onStop,2310862:doClear,[(340,90)(340,41)]) } Add(mysql_fetch_row,13224454,350,77) { link(onFetchRow,12544154:doRead,[]) link(Query,6553231:Result,[(356,65)(282,65)(282,124)(188,124)]) } Add(ArrayRead,12544154,406,77) { Index=0 link(onRead,13387515:doStrCat,[]) } Add(StringBuilder,14591935,504,140) { Mask="участники: %new%" Args=#17:Mask=Маска строки|3:new| link(onBuild,12764087:onRead,[(578,146)(578,27)]) link(new,7617209:Result,[]) } Add(StrCat,13387515,462,77) { Str2=" " Extern=1 link(onStrCat,7617209:doStrCat,[]) } Add(Hub,7699628,70,77) { link(onEvent1,15733624:doBuild,[]) link(onEvent2,14591935:doBuild,[(119,90)(119,146)]) } Add(Memory,2310862,511,28) { } Add(StrCat,7617209,511,77) { Extern=1 link(onStrCat,2310862:doValue,[(553,83)(553,66)(500,66)(500,34)]) link(Str1,2310862:Value,[]) } END_SDK Add(Echo,10991811,49,63) { Message="fadd\t\tf_forum_begin\r\n" } Add(GetDataEx,5124079,490,39) { Angle=3 link(Data,13097961:Result,[(336,44)(336,100)(300,100)]) } Add(StrArray,3449723,973,112) { Strings=#4:none| } Add(ArrayItem,12637172,980,56) { Name="status" link(Array,464134:Var2,[]) } Add(GetDataEx,11311365,931,39) { Angle=3 link(Data,10690040:Var3,[]) } Add(ArrayRead,15332791,973,154) { link(Array,3449723:Array,[]) } Add(ArrayItem,13783137,1029,56) { Name="forum" link(Array,464134:Var3,[(1035,44)]) } Add(GetDataEx,464134,980,39) { Angle=3 link(Data,11311365:Var3,[]) } Add(HtmlSpecialChars,8055278,644,63) { link(Text,7373079:Get,[(650,51)(646,51)(646,100)(643,100)]) } END_SDK Add(Hub,11812984,91,91) { OutCount=6 link(onEvent1,6383798:doEcho,[]) link(onEvent2,16134098:doBuild,[(123,104)(123,146)]) link(onEvent3,8323193:doEvent,[(123,111)(123,251)]) link(onEvent4,10763079:doQuery,[(123,118)(123,307)]) link(onEvent5,356120:doData,[(123,125)(123,370)]) link(onEvent6,3839735:doBuild,[(123,132)(123,468)]) } Add(Echo,3170800,91,49) { Message="set\ttext\tf_forum_body\r\n" } Add(StringBuilder,2780796,336,301) { Mask="call\tmake_pages\tforum_serv.php?q=2&f=%forum%\t%start%\t%count%\t20" Args=#17:Mask=Маска строки|5:count|5:start|5:forum| link(onBuild,1342417:doEcho,[]) link(start,12689421:Var3,[(356,233)]) link(forum,4665596:Var3,[(363,289)]) } Add(mysql_query,10763079,140,301) { link(onQuery,12651989:doResult,[]) link(SQL,8323193:Pages,[]) } Add(Echo,6069297,434,301) { Message="\r\nflush\tpages\r\n" } Add(Echo,1342417,385,301) { link(onEcho,6069297:doEcho,[]) } Add(mysql_result,12651989,238,301) { Index=0 link(onResult,11052652:doOperation,[]) } Add(DoData,356120,140,364) { link(onEventData,3279561:doEvent,[]) link(Data,2627644:Var2,[(146,338)(202,338)]) } Add(GetDataEx,12689421,329,228) { link(Data,8617973:Result,[]) } Add(ArrayItem,2697442,238,413) { Name="name" link(onGet,10195261:doEvent,[]) } Add(StringBuilder,16134098,140,140) { Mask="SELECT name, `order`, type FROM $db_forums WHERE forum_id = %forum%" Args=#17:Mask=Маска строки|5:forum| link(onBuild,13424337:doQuery,[]) link(forum,9823428:Var3,[(153,128)(181,128)]) } Add(GetDataEx,4665596,175,284) { link(Data,9823428:Var2,[(181,250)]) } Add(mysql_query,13424337,189,140) { link(onQuery,3892669:doFetchArray,[]) } Add(mysql_fetch_array,3892669,238,140) { } Add(Hub,3279561,189,364) { link(onEvent1,2221271:doGet,[]) link(onEvent2,2697442:doGet,[(221,377)(221,419)]) } Add(ArrayItem,2221271,238,364) { Name="order" link(onGet,16227136:doBuild,[]) } Add(StringBuilder,16227136,287,364) { Mask="SELECT name FROM $db_forums WHERE type = 1 AND `order` < %order% ORDER BY `order` DESC LIMIT 0,1" Args=#17:Mask=Маска строки|5:order| link(onBuild,15138820:doQuery,[]) } Add(mysql_query,15138820,336,364) { link(onQuery,11464539:doResult,[]) } Add(mysql_result,11464539,385,364) { Index=0 link(onResult,14516641:doBuild,[]) } Add(GetDataEx,6754433,140,228) { link(Data,11759217:Get,[]) } Add(GetDataEx,2627644,196,172) { Angle=1 link(Data,3892669:Result,[(244,177)]) } Add(ArrayItem,11759217,140,189) { Name="type" link(Array,2627644:Var1,[(146,177)]) } Add(InfoTip,1641633,133,287) { Info=#5:Pages| Width=386 Height=53 } Add(StringBuilder,14516641,434,364) { Mask="fadd\t\tf_forum_link\t%name%\r\nfadd\t\tself_data\t >> \r\n" Args=#17:Mask=Маска строки|4:name| link(onBuild,13826204:doEcho,[]) } Add(Case,3392669,140,42) { Value=Integer(10) link(onNextCase,3316368:doCase,[]) link(onTrue,13707342:doBuild,[]) AddHint(-1,-27,29,14,Value) } Add(StringBuilder,4846516,238,91) { Mask="SELECT STRAIGHT_JOIN t.topic_id, t.title, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status, t.forum FROM $db_topics t, $db_posts p1, $db_posts p2, $db_users u1, $db_users u2, $db_forums f WHERE t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id AND t.forum = f.forum_id AND (f.type <> 2 OR t.topic_id IN(SELECT topic_id FROM $db_pms WHERE user_id = %user%)) ORDER BY t.last_post DESC LIMIT %start%, 20" Args=#17:Mask=Маска строки|4:user|5:start| link(onBuild,5611776:doWork1,[(277,97)]) link(user,13648081:Get,[(251,75)(275,75)(275,135)(300,135)]) link(start,13973387:Var1,[(258,65)]) } Add(HubEx,8645987,224,245) { link(onEvent,5166233:doBuild,[]) } Add(Echo,600900,189,91) { link(onEcho,4846516:doBuild,[]) } Add(StringBuilder,3839735,140,462) { Mask="cset\tparForumId\t%id%\r\n" Args=#17:Mask=Маска строки|2:id| link(onBuild,5866983:doEcho,[]) link(id,4665596:Var2,[(153,422)(181,422)]) } Add(Echo,5866983,189,462) { } Add(Vars,2594205,966,42) { Name="l" Point(Get) } Add(StrInt,2909800,973,91) { link(Text,2594205:Get,[]) } Add(ArrayItem,13648081,294,91) { Name="user_id" link(Array,8455189:Var,[]) } Add(GlobalVar,8455189,294,63) { Name="udata" } Add(Case,3316368,350,42) { Value=Integer(14) link(onNextCase,13489574:doCase,[]) link(onTrue,12101124:doShowNew,[(394,55)(394,146)]) AddHint(-3,-27,29,14,Value) } Add(MultiElementEx,12101124,406,140) { @Hint=#14:Показать новые| CodeType=1 link(onShow,9360448:doWork1,[(445,146)]) } BEGIN_SDK Add(EditMultiEx,10507996,21,21) { WorkCount=#9:doShowNew| EventCount=#6:onShow| Width=293 link(doShowNew,1112372:doCompare,[(35,27)(35,132)]) } Add(StringBuilder,4846516,196,126) { Mask="SELECT t.topic_id, t.title, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status, t.forum FROM $db_new_posts np, $db_topics t, $db_posts p1, $db_posts p2, $db_users u1, $db_users u2 WHERE np.user_id = %user% AND np.topic_id = t.topic_id AND t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id AND t.topic_id NOT IN(SELECT topic_id FROM $db_pms) GROUP BY np.topic_id ORDER BY p2.post_id DESC LIMIT 20 " Args=#17:Mask=Маска строки|4:user| link(onBuild,10507996:onShow,[(250,132)(250,27)]) link(user,8425284:Var3,[(209,114)]) } Add(Echo,600900,98,126) { Message="dmclr\ttext\r\ndmapp\ttext\tf_forum_body\r\n" link(onEcho,3744089:doPrint,[]) } Add(If_else,1112372,49,126) { Type=2 Op2=Integer(0) link(onTrue,600900:doEcho,[]) link(onFalse,1314326:doEcho,[(89,139)(89,181)]) link(Op1,8425284:Var2,[]) } Add(ArrayItem,13648081,49,70) { Name="user_id" link(Array,8455189:Var,[]) } Add(GlobalVar,8455189,49,42) { Name="udata" } Add(Echo,1314326,98,175) { Message="mes\tЭта функция доступна только для зарегистрированных пользователей\r\n" } Add(GetDataEx,8425284,49,109) { link(Data,13648081:Get,[]) } Add(CallFunc,3744089,147,126) { Args=1 Name="ss_info" link(onPrint,4846516:doBuild,[]) link(Arg1,3769232:Text,[]) } Add(VisualText,3769232,147,84) { Lines=#24:Просмотр новых сообщений| Width=151 Point(Text) } Add(InfoTip,14278436,189,266) { Info=#503:SELECT t.topic_id, t.title, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status FROM $db_topics t, $db_posts p1, $db_posts p2, $db_users u1, $db_users u2 WHERE t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id AND t.topic_id NOT IN(SELECT topic_id FROM $db_pms) AND t.topic_id IN(SELECT topic_id FROM $db_new_posts WHERE user_id = %user%) ORDER BY t.last_post DESC| Width=414 Height=95 } END_SDK Add(HubEx,5611776,273,175) { Angle=2 link(onEvent,8645987:doWork1,[(228,181)]) } Add(If_else,8403993,140,511) { Op2=Integer(2) link(onTrue,4046267:doEcho,[]) } Add(Echo,4046267,189,511) { Message="set\tinfo\tself_data\tИмена адресатов через запятую\r\n" } Add(CallFunc,3744089,385,462) { Args=1 Name="ss_info" } Add(StringBuilder,3463017,336,462) { Mask="Просмотр форума: %fname% >> %tname%" Args=#17:Mask=Маска строки|5:fname|5:tname| link(onBuild,3744089:doPrint,[]) link(fname,11464539:Result,[(349,455)(428,455)(428,404)(391,404)]) } Add(Hub,10195261,287,413) { link(onEvent1,10064003:doBuild,[]) link(onEvent2,3463017:doBuild,[(327,426)(327,468)]) } Add(Case,13489574,406,42) { Value=Integer(20) link(onNextCase,7265793:doCase,[]) link(onTrue,7041995:doAddFavorite,[(451,55)(451,146)]) AddHint(-3,-27,29,14,Value) } Add(MultiElementEx,7041995,469,140) { @Hint=#9:Избранное| link(topic,8529961:Var2,[]) } BEGIN_SDK Add(EditMultiEx,11286336,21,21) { WorkCount=#13:doAddFavorite| DataCount=#5:topic| Width=517 Height=228 link(doAddFavorite,518251:doInline,[(31,27)(31,139)]) } Add(Inline,518251,42,133) { InlineCode=#28:global $db_topics, $db_fvrt;| link(onInline,6535878:doWork1,[]) } Add(MultiElement,6535878,91,133) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(31,27)(31,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,14169986:doWork1,[(158,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(240,132)(240,27)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(0) link(onTrue,14169986:doWork2,[]) link(onFalse,13901629:doWork1,[(163,146)(163,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,14169986,154,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(If_else,15124779,140,133) { link(onTrue,2766255:doBuild,[]) link(onFalse,11648449:doEcho,[(180,146)(180,188)]) } Add(Echo,11648449,189,182) { Message="mes\tТолько посетители со статусом Пользователь могут добавлять темы в Избранное.\r\n" } Add(mysql_query,12969499,238,133) { link(onQuery,1094307:doResult,[]) } Add(mysql_result,1094307,287,133) { Index=0 link(onResult,2755138:doCompare,[]) } Add(If_else,2755138,336,133) { link(onTrue,10997478:doBuild,[]) link(onFalse,9935762:doBuild,[(376,146)(376,188)]) } Add(StringBuilder,10997478,385,133) { Mask="DELETE FROM $db_fvrt WHERE topic_id = %topic% AND user_id = %user%" Args=#17:Mask=Маска строки|5:topic|4:user| link(onBuild,5729106:doExec,[(425,139)(425,146)]) link(topic,11854087:Var2,[]) link(user,10735187:Var2,[]) } Add(GetDataEx,2789373,196,102) { Angle=3 link(Data,11286336:topic,[(27,107)]) } Add(Echo,11952490,483,133) { Message="mes\tТема удалена из Избранногo\r\n" } Add(StringBuilder,9935762,385,182) { Mask="INSERT INTO $db_fvrt(user_id, topic_id) VALUES(%user%, %topic%)" Args=#17:Mask=Маска строки|4:user|5:topic| link(onBuild,7707248:doExec,[(425,188)(425,195)]) link(user,10735187:Var3,[(421,168)(421,121)]) link(topic,11854087:Var3,[(425,171)(425,107)]) } Add(ArrayItem,4630753,399,63) { Name="user_id" link(Array,3515128:Var,[]) } Add(GlobalVar,3515128,399,35) { Name="udata" } Add(mysql_query,5729106,434,133) { link(onQuery,11952490:doEcho,[]) } Add(mysql_query,7707248,434,182) { link(onQuery,13631779:doEcho,[]) } Add(Echo,13631779,483,182) { Message="mes\tТема добавлена в Избранное\r\n" } Add(GetDataEx,11854087,392,102) { Angle=3 link(Data,2789373:Var3,[]) } Add(GetDataEx,10735187,399,116) { link(Data,4630753:Get,[]) } Add(StringBuilder,2766255,189,133) { Mask="SELECT count(*) FROM $db_fvrt WHERE topic_id = %topic% AND user_id = %user% " Args=#17:Mask=Маска строки|5:topic|4:user| link(onBuild,12969499:doQuery,[]) link(topic,2789373:Var2,[]) link(user,10735187:Var1,[(209,121)]) } END_SDK Add(Vars,1690472,462,42) { Name="t" Point(Get) } Add(StrInt,6881965,469,91) { link(Text,1690472:Get,[]) } Add(Case,7265793,518,42) { Value=Integer(21) link(onNextCase,6810412:doCase,[]) link(onTrue,2465331:doRemoveTopic,[(558,55)(558,146)]) AddHint(-3,-27,29,14,Value) } Add(MultiElementEx,2465331,574,140) { @Hint=#15:Удаление топика| @IsLib=True link(topic,12256036:Var2,[]) } BEGIN_SDK Add(EditMultiEx,8435734,14,14) { WorkCount=#13:doRemoveTopic| DataCount=#5:topic| Width=1116 Height=242 link(doRemoveTopic,518251:doInline,[(28,20)(28,104)]) } Add(Inline,518251,42,98) { InlineCode=#75:global $db_topics, $db_fvrt, $db_pms, $db_forums, $db_posts, $db_new_posts;| link(onInline,14065917:doWork1,[]) } Add(StrCat,1530969,497,98) { Str1="SELECT post_id FROM $db_posts WHERE topic = " link(onStrCat,10151193:doQuery,[]) link(Str2,4809285:Var2,[]) } Add(Echo,11648449,189,147) { Message="mes\tТолько админы могут удалять темы.\r\n" } Add(MultiElement,14065917,91,98) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(30,16)(30,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,14169986:doWork1,[(158,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(236,132)(236,16)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(1) link(onTrue,14169986:doWork2,[]) link(onFalse,13901629:doWork1,[(163,146)(163,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,14169986,154,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(If_else,15124779,140,98) { link(onTrue,10756614:doStrCat,[]) link(onFalse,11648449:doEcho,[(183,111)(183,153)]) } Add(mysql_query,10151193,546,98) { link(onQuery,4472681:doNumRows,[]) } Add(mysql_num_rows,4472681,595,98) { link(onNumRows,1041199:doFor,[]) } Add(For,1041199,644,98) { link(onEvent,11880210:doFetchRow,[]) link(onStop,4598958:doEvent,[(684,111)(684,153)]) } Add(mysql_fetch_row,11880210,693,98) { link(onFetchRow,11419539:doRead,[]) link(Query,10151193:Result,[(699,86)(638,86)(638,139)(552,139)]) } Add(ArrayRead,11419539,742,98) { Index=0 link(onRead,9251670:doPrint,[]) } Add(CallFunc,9251670,791,98) { Args=1 Name="remove_post" } Add(Hub,4598958,693,147) { link(onEvent1,6069226:doStrCat,[]) link(onEvent2,10826025:doStrCat,[(733,160)(733,209)]) } Add(StrCat,6069226,742,147) { Str1="DELETE FROM $db_fvrt WHERE topic_id = " link(onStrCat,3138218:doExec,[(782,153)(782,160)]) link(Str2,652785:Var2,[]) } Add(mysql_query,3138218,791,147) { link(onQuery,12706553:doStrCat,[]) } Add(GetDataEx,9705806,483,60) { Angle=3 link(Data,13531917:Var3,[]) } Add(StrCat,12706553,840,147) { Str1="DELETE FROM $db_pms WHERE topic_id = " link(onStrCat,8273297:doExec,[(880,153)(880,160)]) link(Str2,13697946:Var2,[]) } Add(mysql_query,8273297,889,147) { link(onQuery,13217795:doStrCat,[]) } Add(StrCat,13217795,938,147) { Str1="UPDATE $db_forums f, $db_topics t SET f.topics = f.topics - 1 WHERE f.forum_id = t.forum AND t.topic_id = " link(onStrCat,3460052:doExec,[(978,153)(978,160)]) link(Str2,4960939:Var2,[]) } Add(GetDataEx,652785,749,130) { link(Data,4809285:Var3,[(755,65)]) } Add(GetDataEx,13697946,847,130) { Angle=3 link(Data,652785:Var3,[]) } Add(mysql_query,3327997,1085,147) { } Add(StrCat,13192029,1036,147) { Str1="DELETE FROM $db_topics WHERE topic_id = " link(onStrCat,3327997:doExec,[(1076,153)(1076,160)]) link(Str2,4960939:Var3,[(1049,135)]) } Add(mysql_query,3460052,987,147) { link(onQuery,13192029:doStrCat,[]) } Add(GetDataEx,4960939,945,130) { Angle=3 link(Data,13697946:Var3,[]) } Add(StrCat,10756614,189,98) { Str1="SELECT IF(f.type = 2 OR f.type = 4, 1, 0), t.forum FROM $db_topics t, $db_forums f WHERE t.forum = f.forum_id AND t.topic_id = " link(onStrCat,5830421:doQuery,[]) link(Str2,13531917:Var2,[]) } Add(mysql_query,5830421,238,98) { link(onQuery,4420243:doFetchRow,[]) } Add(If_else,6518370,434,98) { link(onTrue,1530969:doStrCat,[]) link(onFalse,5147228:doQuery,[(478,111)(478,143)(373,143)(373,174)]) } Add(GetDataEx,13531917,196,60) { Angle=3 link(Data,8435734:topic,[(20,65)]) } Add(mysql_query,479929,791,203) { } Add(GetDataEx,4809285,504,60) { Angle=3 link(Data,9705806:Var3,[]) } Add(ArrayRead,13147525,287,147) { Index=1 link(Array,4420243:Result,[]) } Add(StrCat,10826025,742,203) { Str1="UPDATE $db_forums f SET f.last_post = (SELECT last_post FROM $db_topics t, $db_posts p WHERE t.last_post = p.post_id AND t.forum = f.forum_id ORDER BY p.time DESC LIMIT 1) WHERE f.forum_id = " link(onStrCat,479929:doExec,[(782,209)(782,216)]) link(Str2,13147525:Item,[(755,191)(293,191)]) } Add(ArrayRead,12352129,336,98) { Index=0 link(onRead,6518370:doCompare,[]) } Add(MultiElementEx,14614839,483,168) { @Hint=#9:В корзину| @IsLib=True link(topic,9705806:Var2,[]) } BEGIN_SDK Add(EditMultiEx,438603,17,14) { WorkCount=#6:doData| DataCount=#5:topic|4:dest| Width=951 Height=137 link(doData,518251:doInline,[(36,20)(36,48)]) } Add(StrCat,10826025,842,42) { Str1="UPDATE $db_forums f SET f.last_post = (SELECT last_post FROM $db_topics t, $db_posts p WHERE t.last_post = p.post_id AND t.forum = f.forum_id ORDER BY p.time DESC LIMIT 1) WHERE f.forum_id = " link(onStrCat,479929:doExec,[(882,48)(882,55)]) } Add(mysql_query,479929,891,42) { } Add(StrCat,11458409,353,42) { Str1="UPDATE $db_topics t, $db_forums f SET f.topics = f.topics - 1, f.posts = f.posts - t.posts WHERE t.forum = f.forum_id AND t.topic_id = " link(onStrCat,14188034:doExec,[(393,48)(393,55)]) link(Str2,10464668:Var2,[]) } Add(mysql_query,14188034,402,42) { link(onQuery,8348868:doBuild,[]) } Add(StringBuilder,8348868,451,42) { Mask="UPDATE $db_topics t, $db_forums f SET f.topics = f.topics + 1, f.posts = f.posts + t.posts WHERE f.forum_id = %dest% AND t.topic_id = %topic%" Args=#17:Mask=Маска строки|5:topic|4:dest| link(onBuild,508484:doExec,[(491,48)(491,55)]) link(topic,9308662:Var2,[]) link(dest,9097097:Var2,[]) } Add(mysql_query,508484,500,42) { link(onQuery,14625148:doBuild,[]) } Add(GetDataEx,6115335,563,18) { Angle=3 link(Data,9097097:Var3,[]) } Add(GetDataEx,9097097,465,18) { Angle=3 link(Data,438603:dest,[(30,23)]) } Add(GetDataEx,9308662,458,25) { Angle=3 link(Data,10464668:Var3,[]) } Add(mysql_query,6517520,598,42) { link(onQuery,10992943:doBuild,[]) } Add(StringBuilder,14625148,549,42) { Mask="UPDATE $db_new_posts SET forum_id = %dest% WHERE topic_id = %topic%" Args=#17:Mask=Маска строки|5:topic|4:dest| link(onBuild,6517520:doExec,[(589,48)(589,55)]) link(topic,11488223:Var2,[]) link(dest,6115335:Var2,[]) } Add(Inline,518251,55,42) { InlineCode=#56:global $db_topics, $db_forums, $db_new_posts, $db_posts;| link(onInline,8124113:doWork1,[]) } Add(GetDataEx,10464668,360,25) { Angle=3 link(Data,1459269:Var3,[]) } Add(mysql_query,6464803,696,42) { link(onQuery,15663917:doEvent,[]) } Add(StringBuilder,10992943,647,42) { Mask="UPDATE $db_topics SET forum = %dest% WHERE topic_id = %topic%" Args=#17:Mask=Маска строки|5:topic|4:dest| link(onBuild,6464803:doExec,[(687,48)(687,55)]) link(topic,11488223:Var3,[(660,30)]) link(dest,7296403:Var2,[]) } Add(GetDataEx,11488223,556,25) { Angle=3 link(Data,9308662:Var3,[]) } Add(GetDataEx,7296403,661,18) { Angle=3 link(Data,6115335:Var3,[]) } Add(StrCat,9013146,206,42) { Str1="SELECT forum FROM $db_topics WHERE topic_id = " link(onStrCat,11595623:doQuery,[]) link(Str2,1459269:Var2,[]) } Add(mysql_query,11595623,255,42) { link(onQuery,9094267:doResult,[]) } Add(mysql_result,9094267,304,42) { Index=0 link(onResult,11458409:doStrCat,[]) } Add(GetDataEx,1459269,213,25) { Angle=3 link(Data,438603:topic,[(23,30)]) } Add(Hub,15663917,745,42) { link(onEvent1,6344056:doData,[]) link(onEvent2,15278020:doData,[(785,55)(785,97)]) } Add(DoData,6344056,794,42) { link(onEventData,10806625:doWork2,[]) link(Data,7296403:Var3,[(800,23)]) } Add(DoData,15278020,794,91) { link(onEventData,10806625:doWork3,[(833,97)]) link(Data,9094267:Result,[(800,83)(310,83)]) } Add(HubEx,10806625,829,42) { link(onEvent,10826025:doStrCat,[]) } Add(MultiElement,8124113,101,42) { link(onEvent1,15503535:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(30,16)(30,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,14169986:doWork1,[(158,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(236,132)(236,16)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(1) link(onTrue,14169986:doWork2,[]) link(onFalse,13901629:doWork1,[(163,146)(163,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,14169986,154,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(If_else,15503535,154,42) { link(onTrue,9013146:doStrCat,[]) link(onFalse,11648449:doEcho,[(194,55)(194,97)]) } Add(Echo,11648449,203,91) { Message="mes\tНедостаточно прав\r\n" } END_SDK Add(mysql_fetch_row,4420243,287,98) { link(onFetchRow,12352129:doRead,[]) } Add(StringBuilder,7173557,805,35) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,11838341:doEcho,[]) } Add(Echo,11838341,854,35) { } Add(mysql_query,5147228,385,168) { SQL="SELECT forum_id FROM $db_forums WHERE type = 4" link(onQuery,9344501:doResult,[]) } Add(mysql_result,9344501,434,168) { Index=0 link(onResult,14614839:doData,[]) } END_SDK Add(GetDataEx,8529961,469,123) { link(Data,6881965:Result,[]) } Add(Case,6810412,574,42) { Value=Integer(31) link(onNextCase,5982171:doCase,[]) link(onTrue,10562585:doSetType,[(621,55)(621,146)]) AddHint(-2,-27,29,14,Value) } Add(MultiElementEx,10562585,637,140) { @Hint=#14:Установка типа| link(type,8513916:Result,[]) link(topic,164051:Var2,[]) } BEGIN_SDK Add(EditMultiEx,6313002,21,21) { WorkCount=#9:doSetType| DataCount=#4:type|5:topic| Width=237 link(doSetType,518251:doInline,[(31,27)(31,125)]) } Add(Inline,518251,42,119) { InlineCode=#18:global $db_topics;| link(onInline,14330199:doCompare,[]) } Add(If_else,14330199,91,119) { Op2=Integer(1) link(onTrue,11868592:doBuild,[]) link(onFalse,1588321:doEcho,[(135,132)(135,174)]) link(Op1,9324898:Get,[]) } Add(GlobalVar,4507504,91,35) { Name="udata" } Add(ArrayItem,9324898,91,70) { Name="level" link(Array,4507504:Var,[]) } Add(Echo,1588321,147,168) { Message="mes\tНе хватает прав для выполнения этой операции\r\n" } Add(StringBuilder,11868592,147,119) { Mask="UPDATE $db_topics SET type = %type% WHERE topic_id = %topic%" Args=#17:Mask=Маска строки|4:type|5:topic| link(onBuild,10507230:doExec,[(187,125)(187,132)]) link(type,6313002:type,[(160,63)(27,63)]) link(topic,6313002:topic,[(167,58)(34,58)]) } Add(mysql_query,10507230,196,119) { } END_SDK Add(Vars,1019128,630,42) { Name="m" Point(Get) } Add(StrInt,8513916,637,91) { link(Text,1019128:Get,[]) } Add(GetDataEx,12256036,574,123) { Angle=3 link(Data,8529961:Var3,[]) } Add(Math,11052652,287,301) { OpType=1 Op2=1 link(onResult,2780796:doBuild,[]) } Add(Case,5982171,686,42) { Value=Integer(34) link(onNextCase,12725259:doCase,[]) link(onTrue,5201580:doShowForumTree,[(733,55)(733,146)]) AddHint(-2,-27,29,14,Value) } Add(MultiElementEx,5201580,742,140) { @Hint=#14:Дерево форумов| link(topic,12610369:Var2,[]) } BEGIN_SDK Add(EditMultiEx,4511957,21,21) { WorkCount=#15:doShowForumTree| DataCount=#5:topic| Width=489 link(doShowForumTree,518251:doInline,[(35,27)(35,97)]) } Add(Echo,18938,441,91) { } Add(Inline,518251,49,91) { InlineCode=#18:global $db_forums;| link(onInline,4365920:doQuery,[]) } Add(mysql_query,4365920,98,91) { SQL="SELECT name, type, forum_id FROM $db_forums WHERE type = 0 OR type = 1 ORDER BY `order` ASC" link(onQuery,11016571:doNumRows,[]) } Add(mysql_num_rows,11016571,147,91) { link(onNumRows,12189668:doFor,[]) } Add(For,12189668,196,91) { link(onEvent,1149541:doFetchRow,[]) link(onStop,1379973:doBuild,[(236,104)(236,146)]) } Add(mysql_fetch_row,1149541,245,91) { link(onFetchRow,6620269:doRead,[]) link(Query,4365920:Result,[(251,79)(163,79)(163,128)(104,128)]) } Add(StringBuilder,12665645,392,91) { Mask="fadd\t\tmoveto_forum\t%name%\t%forum_id%\t%ind%\r\n" Args=#17:Mask=Маска строки|4:name|8:forum_id|3:ind| link(onBuild,4925771:doWork2,[]) link(name,6771679:Var3,[(405,79)]) link(forum_id,14522621:Item,[(412,83)(447,83)]) link(ind,12189668:Position,[(419,83)(484,83)(484,189)(202,189)]) } Add(ArrayRead,6620269,294,91) { Index=1 link(onRead,8443215:doEvent,[]) } Add(IndexToChanel,8443215,343,91) { link(onEvent1,12665645:doBuild,[]) link(onEvent2,16663691:doBuild,[(383,104)(383,146)]) } Add(ArrayRead,3518187,392,42) { Index=0 link(Array,9276778:Var2,[]) } Add(ArrayRead,14522621,441,42) { Index=2 link(Array,9276778:Var3,[(447,30)]) } Add(GetDataEx,9276778,392,25) { Angle=3 link(Data,1149541:Result,[(322,30)(322,129)(251,129)]) } Add(Echo,3771890,294,140) { } Add(StringBuilder,16663691,392,140) { Mask="fadd\t\tmoveto_group\t%name%\r\n" Args=#17:Mask=Маска строки|4:name| link(onBuild,4925771:doWork3,[(431,146)]) link(name,6771679:Var1,[(405,132)(386,132)(386,79)]) } Add(HubEx,4925771,427,91) { link(onEvent,18938:doEcho,[]) } Add(GetDataEx,6771679,392,74) { link(Data,3518187:Item,[]) } Add(StringBuilder,1379973,245,140) { Mask="fadd\t\tmoveto_end\t%topic%\r\nflush\tpbody\r\n" Args=#17:Mask=Маска строки|5:topic| link(onBuild,3771890:doEcho,[]) link(topic,4511957:topic,[(258,132)(27,132)]) } END_SDK Add(GetDataEx,12610369,742,123) { Angle=3 link(Data,164051:Var3,[]) } Add(Case,12725259,742,42) { Value=Integer(35) link(onNextCase,8910965:doCase,[]) link(onTrue,7722858:doData,[(782,55)(782,146)]) AddHint(-2,-27,29,14,Value) } Add(Vars,12100530,798,42) { Name="f" Point(Get) } Add(MultiElementEx,4961456,1078,140) { @Hint=#30:Смена названия топика=Название| link(title,888842:Result,[]) link(topic,10550440:Var3,[(1091,128)]) } BEGIN_SDK Add(EditMultiEx,5356216,21,21) { WorkCount=#13:doChangeTitle| DataCount=#5:title|5:topic| Width=314 Height=165 link(doChangeTitle,518251:doInline,[(31,27)(31,90)]) } Add(Inline,518251,42,84) { InlineCode=#18:global $db_topics;| link(onInline,10111852:doWork1,[]) } Add(MultiElement,10111852,91,84) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(25,16)(25,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,14169986:doWork1,[(158,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(240,132)(240,27)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(0) link(onTrue,14169986:doWork2,[]) link(onFalse,13901629:doWork1,[(163,146)(163,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,14169986,154,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(If_else,15124779,140,84) { link(onTrue,12833407:doBuild,[]) link(onFalse,11648449:doEcho,[(180,97)(180,139)]) } Add(mysql_query,12969499,238,84) { } Add(Echo,11648449,189,133) { Message="mes\tНедостаточно прав\r\n" } Add(StringBuilder,12833407,189,84) { Mask="UPDATE $db_topics SET title = '%title%' WHERE topic_id = %topic%" Args=#17:Mask=Маска строки|5:title|5:topic| link(onBuild,12969499:doExec,[(229,90)(229,97)]) link(title,5356216:title,[(202,52)(27,52)]) link(topic,5356216:topic,[(209,52)(34,52)]) } END_SDK Add(MultiElementEx,7722858,798,140) { @Hint=#18:Перемещение топика| elink(14614839) link(topic,5740071:Var2,[]) link(dest,12100530:Get,[]) } Add(Case,8910965,854,42) { Value=Integer(43) link(onNextCase,3669737:doCase,[]) link(onTrue,3315694:doLock,[(898,55)(898,146)]) AddHint(-2,-27,29,14,Value) } Add(MultiElementEx,3315694,910,140) { @Hint=#20:Закрыть\открыть тему| link(topic,12054881:Var2,[]) } BEGIN_SDK Add(EditMultiEx,11286336,21,21) { WorkCount=#6:doLock| DataCount=#5:topic| Width=517 Height=228 link(doLock,518251:doInline,[(31,27)(31,139)]) } Add(Inline,518251,42,133) { InlineCode=#18:global $db_topics;| link(onInline,12021244:doWork1,[]) } Add(StrCat,16472355,189,133) { Str1="SELECT status FROM $db_topics WHERE topic_id = " link(onStrCat,12969499:doQuery,[]) link(Str2,2789373:Var2,[]) } Add(MultiElement,12021244,91,133) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(31,27)(31,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,14169986:doWork1,[(158,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(240,132)(240,27)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(1) link(onTrue,14169986:doWork2,[]) link(onFalse,13901629:doWork1,[(163,146)(163,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,14169986,154,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(If_else,15124779,140,133) { link(onTrue,16472355:doStrCat,[]) link(onFalse,11648449:doEcho,[(180,146)(180,188)]) } Add(Echo,11648449,189,182) { Message="mes\tНедостаточно прав\r\n" } Add(mysql_query,12969499,238,133) { link(onQuery,1094307:doResult,[]) } Add(mysql_result,1094307,287,133) { Index=0 link(onResult,2755138:doCompare,[]) } Add(If_else,2755138,336,133) { link(onTrue,14594503:doStrCat,[]) link(onFalse,5707187:doStrCat,[(376,146)(376,188)]) } Add(mysql_query,7707248,434,182) { link(onQuery,13631779:doEcho,[]) } Add(GetDataEx,2789373,196,102) { Angle=3 link(Data,11286336:topic,[(27,107)]) } Add(Echo,11952490,483,133) { Message="mes\tТема открыта\r\n" } Add(StrCat,14594503,385,133) { Str1="UPDATE $db_topics SET status = 0 WHERE topic_id = " link(onStrCat,5729106:doExec,[(425,139)(425,146)]) link(Str2,11854087:Var2,[]) } Add(Echo,13631779,483,182) { Message="mes\tТема закрыта\r\n" } Add(GetDataEx,11854087,392,102) { Angle=3 link(Data,2789373:Var3,[]) } Add(mysql_query,5729106,434,133) { link(onQuery,11952490:doEcho,[]) } Add(StrCat,5707187,385,182) { Str1="UPDATE $db_topics SET status = 1 WHERE topic_id = " link(onStrCat,7707248:doExec,[(425,188)(425,195)]) link(Str2,11854087:Var3,[(398,170)(411,170)(411,107)]) } END_SDK Add(GetDataEx,164051,644,123) { Angle=3 link(Data,12256036:Var3,[]) } Add(Case,3669737,910,42) { Value=Integer(44) link(onNextCase,4198811:doCase,[]) link(onTrue,7363958:doPreviewForum,[(954,55)(954,146)]) AddHint(0,-27,29,14,Value) } Add(MultiElementEx,7363958,966,140) { @Hint=#12:Предпросмотр| link(topic,10550440:Var2,[]) link(ord,2909800:Result,[]) } BEGIN_SDK Add(EditMultiEx,15865696,21,21) { WorkCount=#14:doPreviewForum| DataCount=#5:topic|3:ord| Width=545 Height=179 link(doPreviewForum,518251:doInline,[(41,27)(41,111)]) } Add(Inline,518251,61,105) { InlineCode=#77:global $db_topics, $db_forums, $db_posts, $db_posts_text, $db_users, $db_pms;| link(onInline,5497912:doRead,[]) } Add(StringBuilder,2152196,175,105) { Mask="SELECT u.name, pt.text FROM $db_topics t, $db_posts p, $db_posts_text pt, $db_users u WHERE t.topic_id = %topic% AND p.topic = t.topic_id AND p.post_id = pt.post AND p.user = u.user_id AND (p.topic NOT IN(SELECT topic_id FROM $db_pms) OR p.topic IN(SELECT topic_id FROM $db_pms WHERE user_id = %user%)) ORDER BY p.time %ord% LIMIT 3" Args=#17:Mask=Маска строки|5:topic|3:ord|4:user| link(onBuild,9450163:doQuery,[]) link(topic,15865696:topic,[(188,63)(27,63)]) link(user,5252086:Get,[]) } Add(MultiElementEx,9450163,224,105) { @Hint=#36:Запрос именованного массива значений| CodeType=1 link(onFetchArray,16091689:doGet,[]) link(onEndEnum,13460685:doEcho,[(264,118)(264,160)]) } BEGIN_SDK Add(EditMultiEx,10562415,21,21) { WorkCount=#7:doQuery| EventCount=#128:onFetchArray=Событие происходит всякий раз при получение очередной строки запроса и выдает её в поток ввиде именованного массива|78:onEndEnum=Событие происходит всякий раз после окончания перебора строк запроса|63:onNotFound=Событие происходит всякий раз при отсутствие записей| VarCount=#54:Array=Содержит массив значений столбцов текущей строки|34:Row=Содержит индекс текущей строки| Height=144 link(doQuery,6747566:doQuery,[(35,27)(35,69)]) link(Array,3881597:Result,[(27,109)(251,109)]) link(Row,5823213:Position,[(34,119)(202,119)]) } Add(mysql_query,6747566,49,63) { MakeExt(SQL,Текст SQL запроса,SQL) link(onQuery,6254023:doNumRows,[]) } Add(mysql_num_rows,6254023,98,63) { link(onNumRows,16376906:doCompare,[]) } Add(If_else,16376906,147,63) { link(onTrue,5823213:doFor,[]) link(onFalse,5795907:doData,[(187,76)(187,132)]) } Add(For,5823213,196,63) { link(onEvent,3881597:doFetchArray,[]) link(onStop,10562415:onEndEnum,[(306,76)(306,34)]) } Add(mysql_fetch_array,3881597,245,63) { link(onFetchArray,10562415:onFetchArray,[(299,69)(299,27)]) link(Query,6747566:Result,[(251,51)(138,51)(138,104)(55,104)]) } Add(DoData,5795907,196,126) { link(onEventData,10562415:onNotFound,[(314,132)(314,41)]) } END_SDK Add(StringBuilder,13806333,469,105) { Mask="fadd\t\tf_forum_preview\t%name%\t%text%\r\n" Args=#17:Mask=Маска строки|4:name|4:text| link(onBuild,11666240:doEcho,[]) link(name,14416393:Get,[(482,93)(475,93)]) } Add(ArrayItem,14416393,469,49) { Name="name" link(Array,9450163:Array,[(475,32)(216,32)(216,147)(230,147)]) } Add(Replace,6017697,420,105) { SubStr="<" DestStr="<" link(onReplace,13806333:doBuild,[]) } Add(Echo,11666240,518,105) { } Add(Replace,14401560,371,105) { SubStr="\t" DestStr=" " link(onReplace,6017697:doReplace,[]) } Add(Echo,13460685,273,154) { Message="flush\tpreview\r\nshow\tpreview\r\n" } Add(Replace,5747498,322,105) { SubStr="\r\n" DestStr="\n" link(onReplace,14401560:doReplace,[]) } Add(ArrayItem,16091689,273,105) { Name="text" link(onGet,5747498:doReplace,[]) } Add(StrArray,16712297,126,49) { Strings=#3:ASC|4:DESC| } Add(ArrayRead,5497912,126,105) { link(onRead,2152196:doBuild,[]) link(Array,16712297:Array,[]) link(Index,15865696:ord,[(139,40)(34,40)]) } Add(GlobalVar,2148713,196,35) { Name="udata" } Add(ArrayItem,5252086,196,63) { Name="user_id" link(Array,2148713:Var,[]) } END_SDK Add(GetDataEx,12054881,910,123) { Angle=3 link(Data,5740071:Var3,[]) } Add(Case,4198811,1022,42) { Value=Integer(48) link(onNextCase,9745432:doCase,[]) link(onTrue,4961456:doChangeTitle,[(1066,55)(1066,146)]) AddHint(-3,-27,29,14,Value) } Add(GetDataEx,5740071,798,123) { Angle=3 link(Data,12610369:Var3,[]) } Add(GetDataEx,10550440,966,123) { Angle=3 link(Data,12054881:Var3,[]) } Add(Vars,1957187,1078,42) { Name="title" Point(Get) } Add(CallFunc,888842,1078,91) { Args=1 Name="cvt_text" link(Arg1,1957187:Get,[(1084,83)(1091,83)]) } Add(Echo,6383798,140,91) { Message="dmclr\ttext\r\ndmapp\ttext\tf_forum_body\r\n" } Add(GetDataEx,14125506,273,228) { Angle=1 link(Data,12689421:Var1,[]) } Add(StringBuilder,13707342,189,49) { Mask="dmclr\ttext\r\ndmapp\ttext\tf_forum_body\r\ncall\tmake_pages\tforum_serv.php?q=10\t%start%\t90\t20\r\nflush\tpages\r\n" Args=#17:Mask=Маска строки|5:start| link(onBuild,600900:doEcho,[(233,55)(233,76)(177,76)(177,97)]) link(start,13973387:Var3,[(202,37)(272,37)]) } Add(GetDataEx,13973387,266,60) { Angle=1 link(Data,14125506:Var3,[(279,65)]) } Add(MultiElementEx,541328,1179,140) { @Hint=#19:Показать популярные| CodeType=1 link(onShow,2657548:doWork1,[(1222,146)]) } BEGIN_SDK Add(EditMultiEx,10507996,21,21) { WorkCount=#9:doShowNew| EventCount=#6:onShow| Width=293 Height=158 link(doShowNew,600900:doEcho,[(59,27)(59,132)]) } Add(StringBuilder,4846516,196,126) { Mask="select t.topic_id, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status, t.forum, sum(r.score) as rel, CONCAT(t.title, ' (рейтинг: ', sum(r.score), ')') as title from hiasm_prating r, hiasm_posts p1, hiasm_posts p2, hiasm_topics t, hiasm_users u1, hiasm_users u2, hiasm_posts p where r.time > UNIX_TIMESTAMP() - 3600*24 AND r.post_id = p.post_id AND p.topic = t.topic_id AND t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id AND t.topic_id NOT IN(SELECT topic_id FROM hiasm_pms) GROUP BY p.topic ORDER BY rel DESC" link(onBuild,10507996:onShow,[(277,132)(277,27)]) } Add(Echo,600900,98,126) { Message="dmclr\ttext\r\ndmapp\ttext\tf_forum_body\r\n" link(onEcho,3744089:doPrint,[]) } Add(CallFunc,3744089,147,126) { Args=1 Name="ss_info" link(onPrint,4846516:doBuild,[]) link(Arg1,3769232:Text,[(153,114)(83,114)]) } Add(VisualText,3769232,77,84) { Lines=#29:Просмотр популярных сообщений| Width=186 Point(Text) } END_SDK Add(Case,9745432,1123,42) { Value=Integer(58) link(onNextCase,8112222:doCase,[]) link(onTrue,541328:doShowNew,[(1167,55)(1167,146)]) AddHint(-3,-27,29,14,Value) } Add(HubEx,9360448,441,175) { Angle=2 link(onEvent,5611776:doWork2,[]) } Add(Case,8112222,1179,42) { Value=Integer(61) link(onNextCase,6735203:onEvent1,[(1221,48)(1221,20)]) link(onTrue,13372637:doShowNew,[(1225,55)(1225,146)]) AddHint(-3,-27,27,13,Value) } Add(MultiElementEx,13372637,1238,140) { @Hint=#14:Свои сообщения| CodeType=1 link(onShow,2657548:doWork2,[(1282,146)(1282,181)]) } BEGIN_SDK Add(EditMultiEx,10507996,21,21) { WorkCount=#9:doShowNew| EventCount=#6:onShow| link(doShowNew,1112372:doCompare,[(35,27)(35,132)]) } Add(StringBuilder,4846516,196,126) { Mask="select t.topic_id, t.posts, IF(p1.user = -1, p1.guest, u1.name) AS author, t.views, IF(p2.user = -1, p2.guest, u2.name) AS name, p2.time, t.type, t.status, t.forum, t.title from hiasm_posts p1, hiasm_posts p2, hiasm_topics t, hiasm_users u1, hiasm_users u2, hiasm_posts p where p.user = %user% AND p.time > UNIX_TIMESTAMP() - 3600*24*7 AND p.topic = t.topic_id AND t.first_post = p1.post_id AND p1.user = u1.user_id AND t.last_post = p2.post_id AND p2.user = u2.user_id AND t.topic_id NOT IN(SELECT topic_id FROM hiasm_pms) GROUP BY p.topic ORDER BY p.time DESC" Args=#17:Mask=Маска строки|4:user| link(onBuild,10507996:onShow,[(295,132)(295,27)]) link(user,8425284:Var3,[(209,114)]) } Add(Echo,600900,98,126) { Message="dmclr\ttext\r\ndmapp\ttext\tf_forum_body\r\n" link(onEcho,3744089:doPrint,[]) } Add(CallFunc,3744089,147,126) { Args=1 Name="ss_info" link(onPrint,4846516:doBuild,[]) link(Arg1,3769232:Text,[(153,114)(104,114)]) } Add(VisualText,3769232,98,84) { Lines=#24:Просмотр своих сообщений| Width=186 Point(Text) } Add(If_else,1112372,49,126) { Type=2 Op2=Integer(0) link(onTrue,600900:doEcho,[]) link(onFalse,1314326:doEcho,[(89,139)(89,181)]) link(Op1,8425284:Var2,[]) } Add(ArrayItem,13648081,49,70) { Name="user_id" link(Array,8455189:Var,[]) } Add(GlobalVar,8455189,49,42) { Name="udata" } Add(GetDataEx,8425284,49,109) { link(Data,13648081:Get,[]) } Add(Echo,1314326,98,175) { Message="mes\tДля просмотра этого раздела необходи войти в систему\r\n" } END_SDK Add(HubEx,2657548,1218,175) { Angle=2 link(onEvent,9360448:doWork2,[]) } END_SDK Add(MultiElement,13727163,364,161) { @Hint=#5:Посты| CodeType=1 link(onEvent1,7462297:doWork1,[]) AddHint(-6,-76,52,14,@Hint) } BEGIN_SDK Add(EditMulti,3896338,14,14) { EventCount=1 WorkCount=1 Width=1741 Height=249 link(doWork1,15588366:doCase,[(34,20)(34,55)]) } Add(Case,2179928,301,49) { Value=Integer(5) link(onNextCase,16358396:doCase,[]) link(onTrue,8411447:doData,[(341,62)(341,30)(191,30)(191,160)]) AddHint(0,-26,21,13,Value) } Add(Case,15588366,49,49) { Value=Integer(3) link(onNextCase,7118259:doCase,[]) link(onTrue,16575692:doCheckPost,[(93,62)(93,160)]) AddHint(1,-26,21,13,Value) } Add(Case,2563268,448,49) { Value=Integer(7) link(onNextCase,10075259:doCase,[]) link(onTrue,14659103:doUpload,[(488,62)(488,104)]) AddHint(1,-26,21,13,Value) } Add(MultiElementEx,633338,154,154) { @Hint=#31:Просмотр топика=Просмотр топика| @IsLib=True link(start,13822040:Var1,[(160,138)]) link(topic,2084923:Var2,[]) } BEGIN_SDK Add(EditMultiEx,16722094,21,21) { WorkCount=#11:doShowTopic| DataCount=#5:start|5:topic| Width=209 Height=179 link(doShowTopic,15864650:doEvent,[(39,27)(39,62)]) } Add(Hub,15864650,56,56) { OutCount=3 link(onEvent1,15142382:doInit,[]) link(onEvent2,2242679:doBuild,[(100,69)(100,111)]) link(onEvent3,7615993:doEvent,[(93,76)(93,153)]) } Add(MultiElementEx,15142382,112,56) { @Hint=#31:Формирование тела страницы=Тело| link(id,9960233:Var2,[]) } BEGIN_SDK Add(EditMultiEx,9261134,21,21) { WorkCount=#6:doInit| DataCount=#2:id| Width=174 Height=172 link(doInit,518251:doInline,[(31,27)(31,139)]) } Add(Echo,3170800,140,133) { } Add(StringBuilder,9788450,91,133) { Mask="fadd\t\tf_topic_body\r\nflush\ttext\r\ncset\tparTopicId\t%id%\r\n" Args=#17:Mask=Маска строки|2:id|4:name| link(onBuild,3170800:doEcho,[]) link(id,9261134:id,[(104,77)(27,77)]) link(name,11547614:Get,[(111,125)(118,125)]) } Add(GlobalVar,11785795,112,49) { Name="udata" } Add(ArrayItem,11547614,112,84) { Name="name" link(Array,11785795:Var,[]) } Add(Inline,518251,42,133) { InlineCode=#18:global $db_topics;| link(onInline,9788450:doBuild,[]) } END_SDK Add(MultiElementEx,2242679,140,105) { @Hint=#36:Загрузка списка постов=Список постов| @IsLib=True link(start,16722094:start,[(146,94)(27,94)]) link(topic,12328652:Var2,[]) } BEGIN_SDK Add(EditMultiEx,11285410,28,21) { WorkCount=#7:doBuild| DataCount=#5:start|5:topic| Width=1175 Height=298 link(doBuild,12787163:doEvent,[(36,27)(36,111)]) } Add(StringBuilder,16544339,210,105) { Mask="SELECT p.post_id, IF(p.user = -1, p.guest, u.name) AS uname, u.note, IF(p.user = -1, 0, u.posts) AS posts, u.rank, pt.text, MAX(p.time, p.edittime) AS time, u.avatar, u.user_id, p.ip, u.rating, u.money, IF(p.edituid = -1, '', u2.name) AS edituid, IF(p.edituid = -1, '', p.edittime) AS edittime FROM $db_users u, $db_posts p, $db_posts_text pt WHERE p.topic = %topic% AND p.post_id = pt.post AND p.user = u.user_id AND (p.topic NOT IN(SELECT topic_id FROM $db_pms) OR p.topic IN(SELECT topic_id FROM $db_pms WHERE user_id = %user%)) ORDER BY p.time ASC LIMIT %start%, 15" Args=#17:Mask=Маска строки|5:topic|5:start|4:user| link(onBuild,16583715:doQuery,[]) link(topic,7574844:Var3,[(223,65)]) link(start,2609784:Var3,[(230,58)]) link(user,14906210:Get,[]) } Add(mysql_query,16583715,259,105) { link(onQuery,16218055:doNumRows,[]) } Add(mysql_num_rows,16218055,308,105) { link(onNumRows,16579278:doFor,[]) } Add(mysql_fetch_array,14185170,406,105) { link(onFetchArray,2525427:doEvent,[]) link(Query,16583715:Result,[(412,94)(299,94)(299,147)(265,147)]) } Add(For,16579278,357,105) { link(onEvent,14185170:doFetchArray,[]) link(onStop,3798291:doBuild,[(401,118)(401,143)(309,143)(309,160)]) } Add(StringBuilder,9930938,602,105) { Mask="fadd\t\tf_topic_post\t%name%\t%stat%\t%posts%\t%time%\t%text%\t%ctrl%\t%note%\t%avatar%\t%post_id%\t%img%\t%ip%\t%rating%\t%energy%\t%money%\r\n" Args=#17:Mask=Маска строки|4:name|4:stat|5:posts|4:ctrl|4:time|4:text|4:note|6:avatar|7:post_id|3:img|2:ip|6:rating|6:energy|5:money|7:edituid|8:edittime| link(onBuild,13877675:doEcho,[]) link(name,1109310:Get,[]) link(stat,7744562:Var1,[(622,93)(664,93)]) link(posts,10379341:Get,[(629,93)(713,93)]) link(ctrl,8892787:Get,[(636,93)(762,93)]) link(text,6313074:Var1,[(650,93)(559,93)]) link(note,11030225:Get,[(657,93)(811,93)]) link(avatar,6313074:Var2,[(664,93)(566,93)]) link(post_id,9445699:Get,[(671,93)(860,93)]) link(img,6313074:Var3,[(678,93)(573,93)]) link(ip,6313074:Var4,[(685,93)(580,93)]) link(rating,837259:Get,[(692,93)(909,93)]) link(energy,6313074:Var5,[(699,93)(587,93)]) link(money,16100308:Get,[(706,93)(958,93)]) link(edituid,8154889:Get,[(713,93)(1014,93)]) link(edittime,10671816:Result,[(720,93)(895,93)(895,135)(1070,135)]) } Add(Echo,13877675,763,105) { } Add(ArrayItem,2977540,504,105) { Name="time" link(onGet,8467702:doFormat,[]) } Add(FormatTime,8467702,553,105) { Mask="%d %b %Y %H:%M" link(onFormat,9930938:doBuild,[]) } Add(ArrayItem,1109310,609,49) { Name="uname" link(Array,16047285:Var2,[]) } Add(MultiElement,7744562,658,49) { CodeType=1 link(Data1,8898288:Var2,[]) } BEGIN_SDK Add(EditMulti,998512,10,10) { DataCount=1 VarCount=1 link(Var1,3206016:Item,[(27,207)(55,207)]) } Add(ArrayItem,8986563,56,112) { Name="rank" link(Array,998512:Data1,[(62,66)(27,66)]) } Add(StrArray,5092043,49,70) { Strings=#8:Участник|12:Пользователь|8:Советник|5:Админ| } Add(ArrayRead,3206016,49,161) { link(Array,5092043:Array,[]) link(Index,8986563:Get,[]) } END_SDK Add(ArrayItem,10379341,707,49) { Name="posts" link(Array,2875435:Var2,[]) } Add(ArrayItem,8892787,756,49) { Name="user_id" link(Array,16665779:Var2,[]) } Add(MultiElement,6313074,553,49) { @Hint=#31:Подготовка параметров=Параметры| CodeType=1 } BEGIN_SDK Add(EditMulti,2193672,17,17) { WorkCount=1 VarCount=5 Width=776 Height=543 link(doWork1,15924506:doEvent,[(40,23)(40,76)]) link(Var1,6017697:Result,[(23,108)(265,108)]) link(Var2,5736160:Value,[(30,226)(216,226)]) link(Var3,10709159:Value,[(37,353)(566,353)]) link(Var4,13416375:Value,[(44,400)(216,400)]) link(Var5,1000392:Value,[(51,532)(706,532)]) } Add(ArrayItem,10837877,112,70) { Name="text" link(onGet,5747498:doReplace,[]) } Add(Replace,5747498,161,70) { SubStr="\r\n" DestStr="\n" link(onReplace,14401560:doReplace,[]) } Add(Hub,15924506,63,70) { OutCount=6 link(onEvent1,10837877:doGet,[]) link(onEvent2,9545733:doGet,[(103,83)(103,132)]) link(onEvent3,10755835:doCompare,[(103,90)(103,188)]) link(onEvent4,13483143:doCompare,[(103,97)(103,314)]) link(onEvent5,8418871:doCompare,[(103,104)(103,363)]) link(onEvent6,13575186:doGet,[(103,111)(103,426)]) } Add(ArrayItem,9545733,112,126) { Name="avatar" link(onGet,11807532:doValue,[]) } Add(If_else,2617629,210,126) { Type=5 Op2=String() link(onTrue,10329177:doSearch,[]) link(onFalse,9884314:doClear,[]) } Add(Memory,11807532,161,126) { link(onData,2617629:doCompare,[]) } Add(Position,10329177,259,126) { Target="://" link(onSearch,14150830:doCompare,[]) } Add(If_else,14150830,308,126) { link(onTrue,15533454:doData,[]) link(onFalse,12967668:doStrCat,[(348,139)(348,188)]) } Add(Memory,9884314,406,126) { } Add(DoData,15533454,357,126) { link(onEventData,11531044:doWork2,[]) link(Data,3559962:Var1,[(363,114)(300,114)]) } Add(StrCat,12967668,357,182) { Str1="hf/tpl/avatars/" link(onStrCat,11531044:doWork3,[(396,188)]) link(Str2,3559962:Var3,[(370,164)]) } Add(HubEx,11531044,392,126) { link(onEvent,9884314:doValue,[]) } Add(GetDataEx,3559962,294,159) { Angle=3 link(Data,11807532:Value,[(167,164)]) } Add(If_else,10755835,112,182) { Type=5 Op2=String() link(onTrue,2499508:doPrint,[]) link(onFalse,5736160:doClear,[]) link(Op1,14252526:Var1,[(118,170)]) } Add(HTML_Collector,2499508,161,182) { link(onPrint,5736160:doValue,[]) link(Src,14252526:Var2,[]) } BEGIN_SDK Add(HCEditor,4270535,21,21) { DataCount=#3:Src| link(doPrint,7055640:doPrint,[(31,27)(31,62)]) } Add(HTM_Img,7055640,42,56) { link(Src,4270535:Src,[(55,38)(27,38)]) } END_SDK Add(Memory,5736160,210,182) { } Add(GetDataEx,14252526,161,165) { Angle=1 link(Data,9884314:Value,[(412,170)]) } Add(If_else,13483143,112,308) { Type=2 Op2=Integer(0) link(onTrue,8483726:doGet,[]) link(Op1,1176965:Var2,[]) } Add(GlobalVar,7927912,112,231) { Name="udata" } Add(ArrayItem,14906210,112,259) { Name="user_id" link(Array,5671785:Var2,[]) } Add(StringBuilder,16496682,259,308) { Mask="SELECT COUNT(*) FROM $db_new_posts WHERE user_id = %user% AND post_id = %post%" Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,10449426:doQuery,[]) link(user,8584455:Var2,[]) } Add(GetDataEx,1176965,112,291) { link(Data,14906210:Get,[]) } Add(ArrayItem,8483726,161,308) { Name="post_id" link(onGet,9345037:doValue,[]) } Add(mysql_query,10449426,308,308) { link(onQuery,13853766:doResult,[]) } Add(mysql_result,13853766,357,308) { Index=0 link(onResult,12947328:doCompare,[]) } Add(If_else,12947328,406,308) { link(onTrue,2652582:doEvent,[(446,314)(446,265)]) link(onFalse,10709159:doClear,[]) } Add(Memory,10709159,560,308) { Default=String() Extern=1 } Add(DoData,5094268,511,308) { Data=String(_new) link(onEventData,10709159:doValue,[]) } Add(Hub,2652582,455,259) { link(onEvent1,15600285:doBuild,[]) link(onEvent2,5094268:doData,[(499,272)(499,314)]) } Add(StringBuilder,15600285,511,259) { Mask="DELETE FROM $db_new_posts WHERE user_id = %user% AND post_id = %post% " Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,2625891:doExec,[(551,265)(551,272)]) link(user,8584455:Var1,[(524,247)(272,247)]) link(post,9345037:Value,[(531,242)(251,242)(251,348)(216,348)]) } Add(mysql_query,2625891,560,259) { } Add(GetDataEx,8584455,266,291) { Angle=3 link(Data,1176965:Var3,[]) } Add(Memory,9345037,210,308) { Extern=1 link(onData,16496682:doBuild,[]) } Add(Replace,14401560,210,70) { SubStr="\t" DestStr=" " link(onReplace,6017697:doReplace,[]) } Add(Replace,6017697,259,70) { SubStr="<" DestStr="<" } Add(GetDataEx,5671785,112,249) { link(Data,7927912:Var,[]) } Add(Memory,13416375,210,357) { } Add(ArrayItem,3446198,161,357) { Name="ip" link(onGet,13416375:doValue,[]) } Add(ArrayItem,3870343,63,259) { Name="rank" link(Array,5671785:Var1,[(69,254)]) } Add(If_else,8418871,112,357) { Type=2 Op2=Integer(1) link(onTrue,3446198:doGet,[]) link(onFalse,13416375:doClear,[]) link(Op1,3870343:Get,[(118,346)(69,346)]) } Add(StrCat,14207862,455,420) { Str1="SELECT ((req_time + UNIX_TIMESTAMP() - time)/2) AS energy FROM hiasm_sessions WHERE user_id = " link(onStrCat,5503384:doQuery,[]) link(Str2,10158031:Value,[(468,408)(318,408)(318,464)(167,464)]) } Add(StrCat,7153884,259,420) { Str1="SELECT * FROM hiasm_sessions WHERE user_id = " link(onStrCat,4080920:doQuery,[]) } Add(mysql_num_rows,10941982,357,420) { link(onNumRows,1176532:doCompare,[]) } Add(If_else,1176532,406,420) { link(onTrue,14207862:doStrCat,[]) link(onFalse,7792393:doWork1,[(445,433)]) } Add(mysql_result,15037909,553,420) { Index=0 link(onResult,14391580:doCompare,[]) } Add(mysql_query,4080920,308,420) { link(onQuery,10941982:doNumRows,[]) } Add(mysql_query,5503384,504,420) { link(onQuery,15037909:doResult,[]) } Add(If_else,14391580,602,420) { Type=2 Op2=Integer(100) link(onTrue,3385988:doData,[]) link(onFalse,11244324:doOperation,[(642,433)(642,489)]) } Add(Memory,1000392,700,420) { Default=Integer(0) Extern=1 } Add(DoData,3385988,651,420) { Data=Integer(0) link(onEventData,8548619:doWork2,[]) } Add(Math,11244324,651,483) { OpType=1 Op1=100 link(onResult,8548619:doWork3,[(690,489)]) link(Op2,15037909:Result,[(664,467)(559,467)]) } Add(HubEx,8548619,686,420) { link(onEvent,1000392:doValue,[]) } Add(If_else,2270030,203,420) { Type=2 Op2=Integer(0) link(onTrue,7153884:doStrCat,[]) link(onFalse,7792393:doWork2,[(250,433)(250,475)]) } Add(HubEx,7792393,441,469) { link(onEvent,1000392:doClear,[(695,475)(695,433)]) } Add(ArrayItem,13575186,112,420) { Name="user_id" link(onGet,10158031:doValue,[]) } Add(Memory,10158031,161,420) { Extern=1 link(onData,2270030:doCompare,[]) } END_SDK Add(ArrayItem,11030225,805,49) { Name="note" link(Array,16244485:Var2,[]) } Add(GetDataEx,16047285,609,32) { Angle=3 link(Data,11035958:Var1,[(447,37)]) } Add(GetDataEx,8898288,658,32) { Angle=3 link(Data,16047285:Var3,[]) } Add(GetDataEx,2875435,707,32) { Angle=3 link(Data,8898288:Var3,[]) } Add(GetDataEx,16665779,756,32) { Angle=3 link(Data,2875435:Var3,[]) } Add(Hub,2525427,455,105) { OutCount=4 link(onEvent1,6313074:doWork1,[(494,111)(494,55)]) link(onEvent2,2977540:doGet,[(497,118)(497,111)]) link(onEvent3,16487506:doGet,[(495,125)(495,160)]) link(onEvent4,10421953:doEcho,[(495,132)(495,209)]) } Add(MultiElementEx,13431687,602,154) { @Hint=#14:Аттачи к посту| CodeType=1 AddHint(46,8,89,13,@Hint) } BEGIN_SDK Add(EditMultiEx,15387391,21,21) { WorkCount=#8:doStrCat| Width=489 Height=214 link(doStrCat,8955806:doStrCat,[(35,27)(35,132)]) } Add(StrCat,8955806,49,126) { Str1="SELECT * FROM $db_attach WHERE post_id = " link(onStrCat,13041822:doQuery,[]) } Add(mysql_query,13041822,98,126) { link(onQuery,6772999:doNumRows,[]) } Add(If_else,5143661,189,126) { link(onTrue,14145419:doFor,[]) } Add(Echo,9461540,336,175) { link(onEcho,7803347:doEcho,[]) } Add(StrCat,14362723,287,175) { Str1="fadd\t\tf_topic_attach\t" link(onStrCat,9461540:doEcho,[]) link(Str2,9661184:Var1,[(300,114)]) } Add(Echo,7803347,385,175) { Message="\r\n" link(onEcho,6380587:doClear,[(428,181)(428,83)]) } Add(mysql_num_rows,6772999,140,126) { link(onNumRows,5143661:doCompare,[]) } Add(mysql_fetch_array,3020800,287,126) { link(onFetchArray,6739079:doGet,[]) link(Query,13041822:Result,[(293,114)(191,114)(191,168)(104,168)]) } Add(For,14145419,238,126) { link(onEvent,3020800:doFetchArray,[]) link(onStop,14362723:doStrCat,[(278,139)(278,181)]) } Add(StrCat,14658330,434,126) { link(onStrCat,6380587:doValue,[(480,132)(480,61)(386,61)(386,76)]) link(Str1,9661184:Var2,[]) } Add(StringBuilder,582924,385,126) { Mask="%name% [ %size%Kb ] [ %down% ] " Args=#17:Mask=Маска строки|4:name|4:size|4:down|2:id| link(onBuild,14658330:doStrCat,[]) link(size,13042064:Var1,[(405,110)(293,110)]) link(down,2418254:Get,[(412,110)(342,110)]) link(id,10892911:Get,[(419,110)(391,110)]) } Add(Memory,6380587,434,70) { } Add(GetDataEx,9661184,434,109) { link(Data,6380587:Value,[]) } Add(ArrayItem,2418254,336,70) { Name="down" link(Array,6403130:Var2,[]) } Add(ArrayItem,6739079,336,126) { Name="file" link(onGet,582924:doBuild,[]) } Add(MultiElement,13042064,287,70) { CodeType=1 link(Data1,5273825:Var2,[]) } BEGIN_SDK Add(EditMulti,15576610,10,10) { DataCount=1 VarCount=1 Height=263 link(Var1,15666100:Result,[(27,270)(48,270)]) } Add(ArrayItem,5629992,42,70) { Name="size" link(Array,15576610:Data1,[(48,46)(27,46)]) } Add(Math,1701212,42,119) { OpType=3 Op2=100 link(Op1,5629992:Get,[]) } Add(StrInt,541728,42,168) { link(Text,1701212:Result,[]) } Add(Math,15666100,42,217) { OpType=3 Op2=10 link(Op1,541728:Result,[]) } END_SDK Add(GetDataEx,5273825,287,53) { Angle=3 link(Data,3020800:Result,[(281,58)(281,164)(293,164)]) } Add(ArrayItem,10892911,385,70) { Name="attach_id" link(Array,6403130:Var3,[(391,58)]) } Add(GetDataEx,6403130,336,53) { Angle=3 link(Data,5273825:Var3,[]) } END_SDK Add(ArrayItem,16487506,504,154) { Name="post_id" link(onGet,10610897:doEvent,[]) link(Array,11035958:Var3,[(510,142)]) } Add(GetDataEx,11035958,441,137) { Angle=3 link(Data,14185170:Result,[(412,142)]) } Add(GetDataEx,1722608,903,32) { Angle=3 link(Data,5183935:Var3,[]) } Add(ArrayItem,16100308,952,49) { Name="money" link(Array,14437600:Var2,[]) } Add(ArrayItem,9445699,854,49) { Name="post_id" link(Array,5183935:Var2,[]) } Add(GetDataEx,16244485,805,32) { Angle=3 link(Data,16665779:Var3,[]) } Add(ArrayItem,14906210,231,56) { Name="user_id" link(Array,7927912:Var,[]) } Add(GlobalVar,7927912,231,28) { Name="udata" } Add(ArrayItem,837259,903,49) { Name="rating" link(Array,1722608:Var2,[]) } Add(GetDataEx,5183935,854,32) { Angle=3 link(Data,16244485:Var3,[]) } Add(GetDataEx,6125252,322,144) { Angle=3 link(Data,2094806:Var3,[]) } Add(StringBuilder,3798291,315,154) { Mask="fadd\t\tf_topic_end\t%topic%\r\nflush\tf_p_body\r\n" Args=#17:Mask=Маска строки|5:topic| link(onBuild,9196582:doEcho,[]) link(topic,6125252:Var2,[]) } Add(GetDataEx,2094806,119,144) { link(Data,7574844:Var2,[]) } Add(mysql_query,9656025,455,154) { } Add(StrCat,365917,406,154) { Str1="UPDATE $db_topics SET views = views + 1 WHERE topic_id =" link(onStrCat,9656025:doExec,[(446,160)(446,167)]) link(Str2,6125252:Var3,[(419,149)]) } Add(GetDataEx,2609784,126,53) { Angle=3 link(Data,11285410:start,[(34,58)]) } Add(GetDataEx,7574844,119,60) { Angle=3 link(Data,11285410:topic,[(41,65)]) } Add(Hub,12787163,56,105) { link(onEvent1,5759430:doEcho,[]) link(onEvent2,8633276:doBuildPages,[(110,118)(110,167)]) } Add(MultiElementEx,8633276,119,161) { @Hint=#44:Формирование линейки страниц=Линейка страниц| link(topic,2094806:Var2,[]) link(start,2609784:Var2,[]) } BEGIN_SDK Add(EditMultiEx,12322512,21,21) { WorkCount=#12:doBuildPages| DataCount=#5:topic|5:start| Width=321 Height=123 link(doBuildPages,518251:doInline,[(28,27)(28,83)]) } Add(StringBuilder,2780796,238,77) { Mask="call\tmake_pages\tforum_serv.php?q=5&t=%forum%\t%start%\t%count%\t15\r\npop\tpages1\r\nflush\tpages2\r\n" Args=#17:Mask=Маска строки|5:count|5:start|5:forum| link(onBuild,1342417:doEcho,[]) link(start,12322512:start,[(258,49)(34,49)]) link(forum,4880658:Var3,[(265,65)]) } Add(mysql_query,10763079,133,77) { link(onQuery,12651989:doResult,[]) } Add(StringBuilder,5378383,84,77) { Mask="SELECT count(*) FROM $db_posts WHERE topic = %topic%" Args=#17:Mask=Маска строки|5:topic| link(onBuild,10763079:doQuery,[]) link(topic,4880658:Var1,[(97,65)]) } Add(GetDataEx,4880658,126,60) { link(Data,12322512:topic,[(132,40)(27,40)]) } Add(Echo,1342417,287,77) { } Add(mysql_result,12651989,182,77) { Index=0 link(onResult,2780796:doBuild,[]) } Add(Inline,518251,35,77) { InlineCode=#17:global $db_posts;| link(onInline,5378383:doBuild,[]) } END_SDK Add(Echo,9196582,357,154) { link(onEcho,365917:doStrCat,[]) } Add(Echo,10421953,504,203) { Message="fadd\t\tf_topic_line\r\n" } Add(Echo,5759430,112,105) { Message="fadd\t\tf_topic_begin\r\n" link(onEcho,518251:doInline,[]) } Add(Inline,518251,161,105) { InlineCode=#92:global $db_topics, $db_posts, $db_users, $db_posts_text, $db_attach, $db_new_posts, $db_pms;| link(onInline,16544339:doBuild,[]) } Add(Hub,10610897,553,154) { OutCount=3 link(onEvent1,13431687:doStrCat,[]) link(onEvent2,11004229:doShowVotes,[(593,167)(593,209)]) link(onEvent3,6894910:doStrCat,[(585,174)(585,251)]) } Add(MultiElementEx,11004229,602,203) { @Hint=#14:Голоса к посту| CodeType=1 AddHint(46,4,91,13,@Hint) } BEGIN_SDK Add(EditMultiEx,53529,21,21) { WorkCount=#11:doShowVotes| Width=608 Height=214 link(doShowVotes,8955806:doStrCat,[(31,27)(31,139)]) } Add(StrCat,8955806,42,133) { Str1="SELECT r.score, u.name FROM hiasm_prating r, hiasm_users u WHERE r.user_id = u.user_id AND r.post_id = " link(onStrCat,13041822:doQuery,[]) } Add(mysql_query,13041822,91,133) { link(onQuery,6772999:doNumRows,[]) } Add(If_else,5143661,189,133) { link(onTrue,14145419:doFor,[]) } Add(Echo,9461540,336,182) { link(onEcho,7803347:doEcho,[]) } Add(Echo,7803347,385,182) { Message="\r\n" link(onEcho,2273825:doEvent,[]) } Add(mysql_num_rows,6772999,140,133) { link(onNumRows,5143661:doCompare,[]) } Add(mysql_fetch_array,3020800,287,133) { link(onFetchArray,6739079:doGet,[]) link(Query,13041822:Result,[(293,121)(184,121)(184,175)(97,175)]) } Add(For,14145419,238,133) { link(onEvent,3020800:doFetchArray,[]) link(onStop,9549157:doBuild,[(278,146)(278,188)]) } Add(StrCat,14658330,490,133) { link(onStrCat,6380587:doValue,[(536,139)(536,65)(481,65)(481,83)]) link(Str1,9661184:Var2,[]) } Add(StringBuilder,582924,385,133) { Mask="%name%(%score%) " Args=#17:Mask=Маска строки|4:name|5:score| link(onBuild,1671815:doCompare,[]) link(score,509092:Get,[(405,121)(391,121)]) } Add(Memory,6380587,490,77) { } Add(GetDataEx,9661184,490,116) { link(Data,6380587:Value,[]) } Add(ArrayItem,2418254,434,77) { Name="score" link(Array,545188:Var3,[(440,65)]) } Add(ArrayItem,6739079,336,133) { Name="name" link(onGet,582924:doBuild,[]) } Add(GetDataEx,6403130,336,60) { Angle=3 link(Data,3020800:Result,[(282,65)(282,174)(293,174)]) } Add(If_else,1671815,434,133) { Type=2 Op2=Integer(0) link(onTrue,14658330:doStrCat,[]) link(onFalse,5630751:doStrCat,[]) link(Op1,2418254:Get,[]) } Add(StrCat,5630751,553,140) { link(onStrCat,759026:doValue,[(599,146)(599,72)(544,72)(544,90)]) link(Str1,6767588:Var2,[]) } Add(Memory,759026,553,84) { } Add(GetDataEx,6767588,553,123) { link(Data,759026:Value,[]) } Add(Hub,2273825,434,182) { link(onEvent1,6380587:doClear,[(481,188)(481,90)]) link(onEvent2,759026:doClear,[(545,195)(545,97)]) } Add(ArrayItem,509092,385,77) { Name="score" link(Array,545188:Var2,[]) } Add(GetDataEx,545188,385,60) { Angle=3 link(Data,6403130:Var3,[]) } Add(StringBuilder,9549157,287,182) { Mask="fadd\t\tf_topic_vote_y\t%yes% %no%" Args=#17:Mask=Маска строки|3:yes|2:no| link(onBuild,9461540:doEcho,[]) link(yes,9661184:Var1,[(300,121)]) link(no,6767588:Var1,[(307,128)]) } END_SDK Add(MultiElementEx,6894910,602,245) { @Hint=#17:Замечания к посту| CodeType=1 AddHint(46,8,111,13,@Hint) } BEGIN_SDK Add(EditMultiEx,15387391,21,21) { WorkCount=#8:doStrCat| Width=482 Height=179 link(doStrCat,6855307:doBuild,[(35,27)(35,132)]) } Add(mysql_query,13041822,98,126) { link(onQuery,6772999:doNumRows,[]) } Add(If_else,5143661,189,126) { link(onTrue,14145419:doFor,[]) } Add(mysql_num_rows,6772999,140,126) { link(onNumRows,5143661:doCompare,[]) } Add(mysql_fetch_array,3020800,287,126) { link(onFetchArray,177355:doWork1,[]) link(Query,13041822:Result,[(293,114)(181,114)(181,169)(104,169)]) } Add(For,14145419,238,126) { link(onEvent,3020800:doFetchArray,[]) } Add(StringBuilder,6020055,385,126) { Mask="fadd\t\tf_topic_mod\t%text%\t%name%\r\n" Args=#17:Mask=Маска строки|4:text|4:name| link(onBuild,7626176:doEcho,[]) link(name,5528586:Get,[]) } Add(Echo,7626176,434,126) { } Add(MultiElement,177355,336,126) { CodeType=1 link(onEvent1,6020055:doBuild,[]) } BEGIN_SDK Add(EditMulti,10189313,21,21) { EventCount=1 WorkCount=1 link(doWork1,10837877:doGet,[(35,27)(35,69)]) } Add(ArrayItem,10837877,49,63) { Name="text" link(onGet,5747498:doReplace,[]) } Add(Replace,5747498,98,63) { SubStr="\r\n" DestStr="\n" link(onReplace,14401560:doReplace,[]) } Add(Replace,14401560,147,63) { SubStr="\t" DestStr=" " link(onReplace,6017697:doReplace,[]) } Add(Replace,6017697,196,63) { SubStr="<" DestStr="<" link(onReplace,10189313:onEvent1,[(274,69)(274,27)]) } END_SDK Add(StringBuilder,6855307,49,126) { Mask="SELECT m.text, u.name FROM hiasm_topic_mod m, hiasm_users u WHERE post = %post% AND m.user = u.user_id ORDER BY time " Args=#17:Mask=Маска строки|4:post| link(onBuild,13041822:doQuery,[]) AddHint(43,-79,184,52,Mask) } Add(ArrayItem,5528586,399,77) { Name="name" link(Array,3020800:Result,[(405,65)(327,65)(327,167)(293,167)]) } END_SDK Add(ArrayItem,8154889,1008,49) { Name="edituid" link(Array,9000942:Var2,[]) } Add(ArrayItem,6971357,1064,49) { Name="edittime" link(Array,9000942:Var3,[(1070,37)]) } Add(FormatTime,10671816,1064,91) { Mask="%d %b %Y в %H:%M" link(Time,6971357:Get,[]) } Add(GetDataEx,14437600,952,32) { Angle=3 link(Data,1722608:Var3,[]) } Add(GetDataEx,9000942,1008,32) { Angle=3 link(Data,14437600:Var3,[]) } END_SDK Add(GetDataEx,9960233,112,39) { Angle=3 link(Data,16722094:topic,[(34,44)]) } Add(MultiElementEx,7615993,175,147) { @Hint=#31:Построение дерева и меню=Дерево| link(Data,12328652:Var3,[(181,93)]) } BEGIN_SDK Add(EditMultiEx,15971077,21,21) { WorkCount=#7:doEvent| DataCount=#4:Data| Width=671 Height=375 link(doEvent,518251:doInline,[(45,27)(45,83)]) } Add(StrCat,13319275,168,77) { Str1="set\tf_top_menu\tf_main_menu\t\r\nset\tf_top_menu1\tf_main_menu\t\r\n" link(onStrCat,6680144:doEcho,[]) } Add(Echo,6680144,217,77) { } Add(ArrayItem,15983975,266,182) { Name="forum_id" link(Array,5520622:Var2,[]) } Add(ArrayItem,11722751,364,231) { Name="title" link(onGet,2817075:doReplace,[]) } Add(Echo,16701118,567,231) { } Add(StringBuilder,10064003,413,182) { Mask="fadd\t\tf_topic_link\t%name%\t%link%\r\n" Args=#17:Mask=Маска строки|4:name|4:link| link(onBuild,11355738:doEcho,[]) link(link,15983975:Get,[(433,173)(343,173)(343,220)(272,220)]) } Add(Echo,13826204,609,133) { } Add(InfoTip,16630209,154,119) { Info=#4:Tree| Width=498 Height=151 } Add(Echo,11355738,462,182) { } Add(mysql_fetch_array,7635142,266,133) { link(onFetchArray,3279561:doEvent,[]) } Add(ArrayItem,2697442,364,182) { Name="name" link(onGet,10064003:doBuild,[]) link(Array,15774741:Var3,[(370,170)]) } Add(Hub,3279561,315,133) { OutCount=3 link(onEvent1,2221271:doGet,[]) link(onEvent2,2697442:doGet,[(355,146)(355,188)]) link(onEvent3,11722751:doGet,[(355,153)(355,237)]) } Add(ArrayItem,2221271,364,133) { Name="order" link(onGet,16227136:doBuild,[]) } Add(StringBuilder,16227136,413,133) { Mask="SELECT name FROM $db_forums WHERE type = 1 AND `order` < %order% ORDER BY `order` DESC LIMIT 0,1" Args=#17:Mask=Маска строки|5:order| link(onBuild,15138820:doQuery,[]) } Add(mysql_query,15138820,462,133) { link(onQuery,11464539:doResult,[]) } Add(mysql_result,11464539,511,133) { Index=0 link(onResult,14516641:doBuild,[]) } Add(StringBuilder,14516641,560,133) { Mask="fadd\t\tf_forum_link\t%name%\r\nfadd\t\tself_data\t >> \r\n" Args=#17:Mask=Маска строки|4:name| link(onBuild,13826204:doEcho,[]) } Add(StrCat,8974160,168,133) { Str1="SELECT f.order, f.name, f.forum_id, t.title, f.type FROM $db_forums f, $db_topics t WHERE f.forum_id = t.forum AND t.topic_id = " link(onStrCat,12493800:doQuery,[]) link(Str2,10874165:Var3,[(181,121)]) } Add(mysql_query,12493800,217,133) { link(onQuery,7635142:doFetchArray,[]) } Add(StringBuilder,12193422,511,231) { Mask="fadd\t\tself_data\t >> %name%\r\nflush\ttree\r\n" Args=#17:Mask=Маска строки|4:name| link(onBuild,16701118:doEcho,[]) } Add(CallFunc,3744089,616,301) { Args=1 Name="ss_info" } Add(Hub,14415862,462,231) { link(onEvent1,12193422:doBuild,[]) link(onEvent2,1374056:doCompare,[(502,244)(502,307)]) } Add(StringBuilder,502056,567,301) { Mask="Просмотр топика: %fname% >> %tname% >> %title%" Args=#17:Mask=Маска строки|5:fname|5:tname|5:title| link(onBuild,3744089:doPrint,[]) link(fname,11464539:Result,[(580,209)(517,209)]) link(tname,2697442:Get,[(587,223)(370,223)]) } Add(GetDataEx,5520622,266,165) { link(Data,7635142:Result,[]) } Add(If_else,1374056,511,301) { Type=5 Op2=Integer(2) link(onTrue,502056:doBuild,[]) link(onFalse,7002438:doData,[(555,314)(555,356)]) link(Op1,10059897:Get,[(517,282)(321,282)]) } Add(ArrayItem,10059897,315,231) { Name="type" link(Array,15774741:Var2,[]) } Add(GetDataEx,15774741,315,165) { Angle=3 link(Data,5520622:Var3,[]) } Add(CallFunc,12739953,616,350) { Args=1 Name="ss_info" } Add(DoData,7002438,567,350) { Data=String(Личные сообщения) link(onEventData,12739953:doPrint,[]) } Add(GetDataEx,10874165,21,116) { link(Data,12415717:Var2,[]) } Add(Hub,8897350,119,77) { OutCount=3 link(onEvent1,13319275:doStrCat,[]) link(onEvent2,8974160:doStrCat,[(159,90)(159,139)]) link(onEvent3,13413743:doStrCat,[(159,97)(159,307)]) } Add(GetDataEx,12415717,21,53) { link(Data,15971077:Data,[]) } Add(Inline,518251,70,77) { InlineCode=#30:global $db_topics, $db_forums;| link(onInline,8897350:doEvent,[]) } Add(StrCat,13413743,168,301) { Str1="SELECT status FROM $db_topics WHERE topic_id = " link(onStrCat,12331609:doQuery,[]) link(Str2,10874165:Var2,[(181,287)(27,287)]) } Add(mysql_query,12331609,217,301) { link(onQuery,14972663:doResult,[]) } Add(mysql_result,14972663,266,301) { Index=0 link(onResult,16042828:doCompare,[]) } Add(If_else,16042828,315,301) { link(onTrue,3558236:doEcho,[]) } Add(Echo,3558236,364,301) { Message="hide\ttopic_form_btn\r\n" } Add(Replace,2817075,413,231) { SubStr="<" DestStr="<" link(onReplace,14415862:doEvent,[]) } END_SDK Add(GetDataEx,12328652,147,88) { link(Data,9960233:Var3,[(153,44)]) } END_SDK Add(Case,10075259,497,49) { Value=Integer(8) link(onNextCase,1463163:doCase,[]) link(onTrue,148788:doWork1,[(536,62)]) AddHint(1,-26,21,13,Value) } Add(HubEx,16660460,245,154) { link(onEvent,6604008:doBuild,[]) } Add(MultiElementEx,10570107,546,98) { @Hint=#18:Обновление аттачей| @IsLib=True } BEGIN_SDK Add(EditMultiEx,7436789,21,21) { WorkCount=#14:doRefreshFiles| Width=482 Height=221 link(doRefreshFiles,518251:doInline,[(35,27)(35,139)]) } Add(GetDataEx,11425646,392,53) { Angle=3 link(Data,16537383:Var3,[]) } Add(StrCat,11651857,98,133) { Str1="SELECT size, file, attach_id FROM $db_attach WHERE type = 0 AND post_id = " link(onStrCat,1114181:doQuery,[]) link(Str2,11399358:Get,[]) } Add(GlobalVar,15978721,105,42) { Name="udata" } Add(ArrayItem,11399358,105,77) { Name="user_id" link(Array,15978721:Var,[]) } Add(mysql_query,1114181,147,133) { link(onQuery,6223482:doNumRows,[]) } Add(mysql_num_rows,6223482,196,133) { link(onNumRows,8991368:doFor,[]) } Add(For,8991368,245,133) { link(onEvent,15241184:doFetchRow,[]) link(onStop,14541600:doEcho,[(285,146)(285,188)]) } Add(mysql_fetch_row,15241184,294,133) { link(onFetchRow,5835650:doBuild,[]) link(Query,1114181:Result,[(300,121)(236,121)(236,175)(153,175)]) } Add(Echo,7383037,392,133) { } Add(StringBuilder,5835650,343,133) { Mask="fadd\t\tf_topic_file\t%size%\t%file%\t%id%\r\n" Args=#17:Mask=Маска строки|4:size|4:file|2:id| link(onBuild,7383037:doEcho,[]) link(size,15229922:Item,[(356,117)(349,117)]) link(file,15651641:Item,[(363,117)(398,117)]) link(id,3248280:Item,[(370,117)(447,117)]) } Add(ArrayRead,15229922,343,70) { Index=0 link(Array,16537383:Var2,[]) } Add(ArrayRead,15651641,392,70) { Index=1 link(Array,11425646:Var2,[]) } Add(Echo,14541600,294,182) { Message="flush\tattaches\r\n" } Add(GetDataEx,16537383,343,53) { Angle=3 link(Data,15241184:Result,[(322,58)(322,177)(300,177)]) } Add(ArrayRead,3248280,441,70) { Index=2 link(Array,11425646:Var3,[(447,58)]) } Add(Inline,518251,49,133) { InlineCode=#18:global $db_attach;| link(onInline,11651857:doStrCat,[]) } END_SDK Add(MultiElementEx,8458140,595,98) { @Hint=#15:Удаление аттача| CodeType=1 link(onRefreshFiles,148788:doWork3,[(634,104)(634,90)]) } BEGIN_SDK Add(EditMultiEx,4313905,21,21) { WorkCount=#14:doRemoveAttach| EventCount=#14:onRefreshFiles| Width=125 Height=179 link(doRemoveAttach,15886568:doPrint,[(45,27)(45,153)]) } Add(CallFunc,15886568,70,147) { Args=1 Name="remove_attach" link(onPrint,4313905:onRefreshFiles,[(124,153)(124,27)]) link(Arg1,7065403:Result,[]) } Add(Vars,9321514,63,49) { Name="a" Point(Get) } Add(StrInt,7065403,70,98) { link(Text,9321514:Get,[]) } END_SDK Add(GetDataEx,13636385,749,84) { link(Data,12990111:Get,[]) } Add(Vars,10620537,154,49) { Name="t" Point(Get) } Add(GetDataEx,2084923,161,126) { link(Data,6811830:Result,[]) } Add(Vars,9321514,196,49) { Name="s" Point(Get) } Add(StrInt,7065403,203,98) { link(Text,9321514:Get,[]) } Add(StrInt,6811830,161,91) { link(Text,10620537:Get,[]) } Add(GetDataEx,13822040,203,133) { link(Data,7065403:Result,[]) } Add(DoData,8411447,203,154) { link(onEventData,16660460:doWork2,[]) link(Data,13822040:Var2,[]) } Add(MultiElementEx,11838107,350,98) { @Hint=#10:Новый пост| @IsLib=True link(onRefresh,3486224:doValue,[(390,104)(390,209)]) } BEGIN_SDK Add(EditMultiEx,16249278,9,21) { WorkCount=#9:doAddPost| EventCount=#9:onRefresh| DataCount=#5:topic| Width=1217 Height=578 link(doAddPost,518251:doInline,[(29,27)(29,90)]) } Add(mysql_query,11935081,581,231) { link(onQuery,7296134:doBuild,[]) } Add(StrCat,7910131,525,231) { Str1="UPDATE $db_users SET posts = posts + 1 WHERE user_id > 0 AND user_id = " link(onStrCat,11935081:doExec,[(569,237)(569,244)]) link(Str2,6145116:Var2,[]) } Add(GlobalVar,8967593,532,21) { Name="udata" } Add(ArrayItem,11966298,532,49) { Name="user_id" link(Array,8967593:Var,[]) } Add(StringBuilder,7296134,637,231) { Mask="INSERT INTO $db_posts(topic, user, guest, time, ip) VALUES(%topic%, %uid%, '%name%', UNIX_TIMESTAMP(), '%ip%')" Args=#17:Mask=Маска строки|5:topic|3:uid|4:name|2:ip| link(onBuild,11276883:doExec,[(687,237)(687,244)]) link(topic,12270703:Var3,[(650,212)]) link(uid,6145116:Var3,[(657,205)]) link(name,4818115:Value,[]) link(ip,9837206:Var2,[]) } Add(Vars,16489957,658,35) { Name="REMOTE_ADDR" Point(Server) } Add(mysql_query,11276883,700,231) { Point(LastInsertId) link(onQuery,15706568:doData,[]) } Add(GetDataEx,6145116,532,200) { link(Data,8362043:Var2,[]) } Add(Vars,13953534,700,35) { Name="name" } Add(Memory,9988564,798,231) { link(onData,6179804:doEvent,[]) } Add(DoData,15706568,749,231) { link(onEventData,9988564:doValue,[]) link(Data,11276883:LastInsertId,[(755,222)(738,222)(738,268)(713,268)]) } Add(MultiElementEx,10037939,903,231) { @Hint=#18:парсинг тегов code| CodeType=1 link(text,5774964:Var2,[]) link(post,9988564:Value,[(916,216)(789,216)(789,270)(804,270)]) } BEGIN_SDK Add(EditMultiEx,8828892,21,21) { WorkCount=#7:doParse| DataCount=#4:text|4:post| Width=783 Height=291 link(doParse,5376918:doData,[(31,27)(31,125)]) } Add(GetDataEx,2094110,42,25) { Angle=3 link(Data,8828892:post,[(34,30)]) } Add(DoData,5376918,42,119) { link(onEventData,4544350:doValue,[]) link(Data,2094110:Var2,[]) } Add(PregReplaceCallback,4763686,161,119) { Pattern="#\[code\](.*?)\[/code\]#si" link(onFindMatch,518251:doInline,[]) link(onReplace,4968004:doBuild,[(201,132)(201,202)]) link(Text,8828892:text,[(167,70)(27,70)]) } Add(AddSlashes,15469600,651,70) { Mode=1 link(Text,6416222:Var1,[(657,50)(300,50)]) } Add(StringBuilder,14536781,455,252) { Mask="[url=load.php?a=%id%]%file%[/url]" Args=#17:Mask=Маска строки|4:file|2:id| link(onBuild,9879166:doReturn,[]) link(file,13427231:Result,[]) link(id,3747603:LastInsertId,[(475,234)(573,234)]) } Add(mysql_query,3747603,560,196) { Point(LastInsertId) } Add(GlobalVar,4544350,84,119) { Name="apost_id" link(onValue,4763686:doReplace,[]) } Add(mysql_query,15512593,259,196) { } Add(StringBuilder,4968004,210,196) { Mask="INSERT INTO $db_posts_text(post, text) VALUES(%post_id%, '%text%')" Args=#17:Mask=Маска строки|7:post_id|4:text| link(onBuild,15512593:doExec,[(250,202)(250,209)]) link(post_id,2094110:Var3,[(223,30)]) } Add(Echo,13325546,602,252) { } Add(StringBuilder,13427231,462,196) { Mask="code_%id%.txt" Args=#17:Mask=Маска строки|2:id| link(onBuild,6422584:doBuild,[]) link(id,10475198:Result,[(475,172)(510,172)]) } Add(ArrayRead,11822144,259,119) { Index=1 link(onRead,12303453:doLength,[]) } Add(StringBuilder,9856406,553,252) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,13325546:doEcho,[]) } Add(GlobalVar,13975563,518,168) { Name="apost_id" } Add(Return,9879166,504,252) { } Add(Length,12303453,308,119) { link(onLength,5370210:doCompare,[]) } Add(If_else,5370210,357,119) { Type=6 Op2=Integer(200000) link(onTrue,2956032:doEvent,[]) link(onFalse,10388298:doBuild,[(398,132)(398,171)(345,171)(345,202)]) link(Op1,2439355:Result,[]) link(Op2,9802239:Result,[(370,111)(412,111)]) } Add(File,5005634,602,119) { Mode="w+" AutoClose=1 link(onOpen,2724249:doWrite,[]) } Add(StringBuilder,8823413,553,119) { Mask="./xf/attach/code/code_%id%.txt" Args=#17:Mask=Маска строки|2:id| link(onBuild,5005634:doOpen,[]) } Add(FileWrite,2724249,651,119) { link(Text,15469600:Result,[(664,111)(657,111)]) } Add(Hub,2956032,406,119) { OutCount=3 link(onEvent1,5762695:doQuery,[]) link(onEvent2,13427231:doBuild,[(446,132)(446,202)]) link(onEvent3,14536781:doBuild,[(446,139)(446,258)]) } Add(mysql_query,5762695,455,119) { SQL="SELECT attach_id FROM $db_attach ORDER BY attach_id DESC LIMIT 1" link(onQuery,10475198:doResult,[]) } Add(mysql_result,10475198,504,119) { Index=0 link(onResult,8823413:doBuild,[]) } Add(StringBuilder,6422584,511,196) { Mask="INSERT INTO $db_attach(post_id, size, file, type) VALUES(%post%, %size%, '%file%', 5)" Args=#17:Mask=Маска строки|4:post|4:size|4:file| link(onBuild,3747603:doExec,[(551,202)(551,209)]) link(post,13975563:Var,[]) link(size,10162765:Var3,[(531,163)]) } Add(Inline,518251,210,119) { InlineCode=#34:global $db_attach, $db_posts_text;| link(onInline,11822144:doRead,[]) } Add(If_else,9802239,406,70) { Type=2 Op2=Integer(100) link(Op1,13686076:Var3,[(412,58)]) } Add(GetDataEx,10162765,343,158) { Angle=3 link(Data,12303453:Result,[(314,163)]) } Add(If_else,2439355,357,70) { Type=1 Op2=Integer(200000) link(Op1,13686076:Var2,[]) } Add(GetDataEx,13686076,357,53) { Angle=3 link(Data,10162765:Var1,[(349,58)]) } Add(StringBuilder,10388298,357,196) { Mask="[code]%txt%[/code]" Args=#17:Mask=Маска строки|3:txt| link(onBuild,11982466:doReturn,[]) link(txt,6416222:Var2,[(370,182)(300,182)]) } Add(Return,11982466,406,196) { } Add(GetDataEx,6416222,294,158) { Angle=3 link(Data,11822144:Item,[(265,163)]) } END_SDK Add(HubEx,16358642,882,420) { Angle=1 link(onEvent,2800176:doBuild,[(886,447)]) } Add(Vars,15604562,903,35) { Name="text" } Add(CallFunc,888842,427,182) { Args=1 Name="cvt_text" IgnoreResult=1 link(onPrint,11963928:doCompare,[]) link(Arg1,3178869:Var2,[(433,170)(706,170)]) } Add(CallFunc,7717232,903,84) { Args=1 Name="cvt_text" link(Arg1,15604562:Post,[]) } Add(Hub,6179804,847,231) { OutCount=6 link(onEvent1,10037939:doParse,[]) link(onEvent2,15584026:doBuild,[(891,244)(891,293)]) link(onEvent3,13565685:doStrCat,[(891,251)(891,342)]) link(onEvent4,16358642:doWork1,[(886,258)]) link(onEvent5,7236683:doBuild,[(891,265)(891,391)]) link(onEvent6,16048050:doCompare,[(891,272)(891,538)]) } Add(StringBuilder,15584026,903,287) { Mask="UPDATE $db_topics SET posts = posts + 1, last_post = %post_id% WHERE topic_id = %topic%" Args=#17:Mask=Маска строки|7:post_id|5:topic| link(onBuild,15685923:doExec,[(943,293)(943,300)]) link(topic,9005755:Var3,[(923,275)]) } Add(GetDataEx,11652870,14,207) { link(Data,16249278:topic,[(20,114)(15,114)]) } Add(mysql_query,15685923,952,287) { } Add(StringBuilder,7236683,903,385) { Mask="UPDATE $db_forums SET posts = posts + 1, last_post = %post_id% WHERE forum_id = %forum_id%" Args=#17:Mask=Маска строки|7:post_id|8:forum_id| link(onBuild,9622124:doExec,[(943,391)(943,398)]) link(forum_id,5776560:Item,[(923,377)(1056,377)]) } Add(StrCat,13565685,903,336) { Str1="SELECT t.forum, t.posts, f.type FROM $db_topics t, $db_forums f WHERE t.forum = f.forum_id AND t.topic_id = " link(onStrCat,7806429:doQuery,[]) link(Str2,9005755:Var2,[(916,326)(867,326)]) } Add(GetDataEx,9005755,861,270) { Angle=3 link(Data,16557455:Var3,[]) } Add(mysql_query,7806429,952,336) { link(onQuery,8097651:doFetchRow,[]) } Add(mysql_fetch_row,8097651,1001,336) { link(onFetchRow,5776560:doRead,[]) } Add(mysql_query,9622124,952,385) { } Add(MathParse,15628598,1050,385) { DataCount=1 MathStr="(%1 - 1)/15" link(onResult,13443891:doStrInt,[]) } Add(StrInt,13443891,1099,385) { link(onStrInt,13391053:doOperation,[]) } Add(Math,13391053,1148,385) { OpType=2 Op2=15 link(onResult,12465911:doWork3,[(1187,391)]) } Add(ArrayRead,5776560,1050,336) { Index=0 } Add(ArrayRead,935208,1001,385) { Index=1 link(onRead,8860209:doWork2,[]) link(Array,10352964:Var2,[]) } Add(InfoTip,15466443,898,425) { Info=#6:attach| Width=50 Height=53 } Add(MultiElementEx,2800176,903,441) { @Hint=#20:Прикрипление аттачей| } BEGIN_SDK Add(EditMultiEx,13063840,21,21) { WorkCount=#7:doBuild| DataCount=#2:id| Width=699 Height=277 link(doBuild,518251:doInline,[(35,27)(35,139)]) } Add(GlobalVar,15978721,252,42) { Name="udata" } Add(ArrayItem,11399358,252,77) { Name="user_id" link(Array,15978721:Var,[]) } Add(mysql_query,1114181,637,238) { } Add(StringBuilder,2458719,588,238) { Mask="UPDATE $db_attach SET type = %uid%, post_id = %id% WHERE attach_id = %aid%" Args=#17:Mask=Маска строки|3:uid|2:id|3:aid| link(onBuild,1114181:doExec,[(628,244)(628,251)]) link(uid,6078873:Item,[]) link(id,4569489:Var3,[(608,114)]) } Add(Echo,9234793,441,189) { Message="set\tattaches\tself_data\t\r\n" link(onEcho,13615299:doEcho,[]) } Add(Echo,13615299,490,189) { Message="cset\tmessage\t\r\n" } Add(Inline,518251,49,133) { InlineCode=#65:global $db_attach, $db_forums, $db_posts, $db_topics, $db_upload;| link(onInline,1042222:doStrCat,[]) } Add(StrCat,1042222,98,133) { Str1="SELECT IF($db_upload.cmd IS NULL, 6, $db_upload.upload_id), IF($db_upload.cmd IS NULL, 'files', $db_upload.cmd) FROM $db_posts p, $db_topics t, $db_forums f LEFT JOIN $db_upload ON(f.forum_id = $db_upload.forum_id) WHERE f.forum_id = t.forum AND t.topic_id = p.topic AND p.post_id = " link(onStrCat,4146054:doQuery,[]) link(Str2,4569489:Var2,[]) } Add(mysql_fetch_row,13751422,196,133) { link(onFetchRow,9754929:doStrCat,[]) } Add(mysql_query,4146054,147,133) { link(onQuery,13751422:doFetchRow,[]) } Add(GetDataEx,4569489,105,109) { Angle=3 link(Data,13063840:id,[(27,114)]) } Add(FileTools,10483997,665,133) { link(FileName,2034538:Result,[]) } Add(ArrayRead,6078873,595,189) { Index=0 link(Array,11691218:Var3,[(601,177)]) } Add(StringBuilder,14614622,616,133) { Mask="./xf/attach/%dir%/%attach%" Args=#17:Mask=Маска строки|3:dir|6:attach| link(onBuild,10483997:doMove,[]) link(dir,14406131:Item,[(629,125)(622,125)]) } Add(ArrayRead,14406131,616,84) { Index=1 link(Array,11691218:Var1,[(622,72)(587,72)]) } Add(StrCat,2034538,665,84) { Str1="./xf/attach/tmp/" link(Str2,7763223:Item,[(678,64)(577,64)(577,173)(545,173)]) } Add(StrCat,9754929,245,133) { Str1="SELECT file, attach_id FROM $db_attach WHERE type = 0 AND post_id = " link(onStrCat,8737091:doQuery,[]) link(Str2,11399358:Get,[]) } Add(mysql_query,8737091,294,133) { link(onQuery,1523536:doNumRows,[]) } Add(mysql_num_rows,1523536,343,133) { link(onNumRows,8867458:doFor,[]) } Add(For,8867458,392,133) { link(onEvent,10925447:doFetchRow,[]) link(onStop,10612791:doStrInt,[(436,146)(436,185)(380,185)(380,251)]) } Add(mysql_fetch_row,10925447,441,133) { link(onFetchRow,5157160:doEvent,[]) link(Query,8737091:Result,[(447,121)(381,121)(381,171)(300,171)]) } Add(ArrayRead,7763223,539,133) { Index=0 link(onRead,14614622:doBuild,[]) } Add(Hub,5157160,490,133) { link(onEvent1,7763223:doRead,[]) link(onEvent2,1102319:doRead,[(530,146)(530,244)]) } Add(GetDataEx,11691218,581,172) { Angle=3 link(Data,13751422:Result,[(202,177)]) } Add(ArrayRead,1102319,539,238) { Index=1 link(onRead,2458719:doBuild,[]) } Add(Vars,11925724,385,196) { Name="a" Point(Get) } Add(StrInt,10612791,392,245) { link(onStrInt,12421060:doCompare,[]) link(Text,11925724:Get,[]) } Add(If_else,12421060,441,245) { Op2=Integer(0) link(onTrue,9234793:doEcho,[(485,251)(485,231)(429,231)(429,195)]) } END_SDK Add(ArrayRead,9643842,903,490) { Index=2 link(Array,10352964:Var1,[(895,482)(895,373)]) } Add(GetDataEx,10352964,1001,368) { link(Data,8097651:Result,[]) } Add(MultiElementEx,582948,378,84) { @Hint=#16:Обновление поста| CodeType=1 link(onResult,12465911:doWork2,[(821,90)(821,48)]) link(onEvent1,10275614:doWork1,[(767,97)]) link(Data,4438139:Var3,[(384,69)(839,69)]) link(Data1,9287367:Var3,[(391,72)]) } BEGIN_SDK Add(EditMultiEx,5295363,21,21) { WorkCount=#7:doWork1| EventCount=#8:onResult|8:onEvent1| DataCount=#4:Data|5:Data1| Width=734 Height=172 link(doWork1,2105528:doCheckPerm,[(39,27)(39,90)]) } Add(StrCat,6016002,399,133) { Str1="SELECT COUNT(*) FROM $db_posts p1, $db_posts p2 WHERE p1.topic = p2.topic AND p2.post_id <= p1.post_id AND p1.post_id = " link(onStrCat,10594943:doQuery,[]) link(Str2,3851446:Var2,[(412,120)(391,120)]) } Add(mysql_query,10594943,448,133) { link(onQuery,10353153:doResult,[]) } Add(mysql_result,10353153,497,133) { Index=0 link(onResult,15470676:doCalc,[]) link(Query,10594943:Result,[(503,121)(484,121)(484,173)(454,173)]) } Add(MathParse,15470676,546,133) { DataCount=1 MathStr="(%1 - 1)/15" link(onResult,14861444:doStrInt,[]) } Add(StrInt,14861444,595,133) { link(onStrInt,16751973:doOperation,[]) } Add(Math,16751973,644,133) { OpType=2 Op2=15 link(onResult,5295363:onResult,[(740,139)(740,27)]) } Add(Echo,2747422,301,84) { Message="cset\tmessage\t\r\ncset\tuser_id\t0\r\nset\tinfo\tself_data\t\r\n" link(onEcho,12420517:doEvent,[]) } Add(StringBuilder,11022523,203,84) { Mask="UPDATE $db_posts_text SET text = '%text%' WHERE post = %post%" Args=#17:Mask=Маска строки|4:text|4:post| link(onBuild,12600039:doExec,[(243,90)(243,97)]) link(text,13387199:Var2,[]) link(post,3125838:Var2,[]) } Add(mysql_query,12600039,252,84) { link(onQuery,2747422:doEcho,[]) } Add(MultiElement,8583933,399,84) { @Hint=#22:Обновление индексатора| CodeType=1 link(onEvent1,5295363:onEvent1,[(593,90)(593,34)]) link(Data1,3851446:Var3,[(405,72)]) link(Data2,13387199:Var3,[(412,58)]) } BEGIN_SDK Add(EditMulti,11474038,10,10) { EventCount=1 WorkCount=1 DataCount=2 Width=265 Height=109 link(doWork1,2463445:doBuild,[(35,27)(35,90)]) } Add(StringBuilder,2463445,49,84) { Mask="DELETE FROM $db_word_post WHERE post_id = %post%" Args=#17:Mask=Маска строки|4:post| link(onBuild,7666193:doExec,[(89,90)(89,97)]) link(post,8684515:Var2,[]) } Add(mysql_query,7666193,98,84) { link(onQuery,9445462:doPrint,[]) } Add(CallFunc,9445462,147,84) { Args=2 Name="post_indexer" link(onPrint,7575431:doData,[]) link(Arg1,11474038:Data2,[(153,52)(34,52)]) link(Arg2,1892390:Var2,[]) } Add(GetDataEx,8684515,56,60) { Angle=3 link(Data,11474038:Data1,[(27,65)]) } Add(DoData,7575431,203,84) { link(onEventData,11474038:onEvent1,[(261,90)(261,27)]) link(Data,1892390:Var3,[(209,65)]) } Add(GetDataEx,1892390,154,60) { Angle=3 link(Data,8684515:Var3,[]) } Add(InfoTip,16170676,210,154) { Info=#24:не удаляет старые записи| Width=106 } END_SDK Add(Hub,12420517,350,84) { link(onEvent1,8583933:doWork1,[]) link(onEvent2,6016002:doStrCat,[(390,97)(390,139)]) } Add(GetDataEx,3125838,217,67) { Angle=3 link(Data,13951816:Var3,[]) } Add(GetDataEx,13387199,210,53) { Angle=3 link(Data,5295363:Data,[(27,58)]) } Add(GetDataEx,3851446,385,67) { Angle=3 link(Data,3125838:Var3,[]) } Add(Echo,15973546,154,91) { Message="mes\tОтказано в доступе\r\n" } Add(MultiElementEx,2105528,56,84) { @Hint=#6:Access| @IsLib=True link(onCheckPerm,15124779:doCompare,[]) link(Post,13951816:Var2,[]) } BEGIN_SDK Add(EditMultiEx,13897244,21,21) { WorkCount=#11:doCheckPerm| EventCount=#11:onCheckPerm| DataCount=#4:Post| Width=433 Height=165 link(doCheckPerm,518251:doInline,[(28,27)(28,125)]) } Add(If_else,5169540,84,119) { Op2=Integer(1) link(onTrue,5146783:doWork1,[(382,125)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,84,28) { Name="udata" } Add(ArrayItem,1699901,84,63) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,406,119) { link(onIndex,13897244:onCheckPerm,[(446,125)(446,27)]) } Add(If_else,4433799,133,126) { Type=2 Op2=Integer(0) link(onTrue,964715:doStrCat,[]) link(onFalse,13901629:doWork1,[(176,139)(176,164)(398,164)(398,125)]) link(Op1,6373604:Var2,[]) } Add(ArrayItem,7612457,133,63) { Name="user_id" link(Array,15883751:Var3,[(139,51)]) } Add(GetDataEx,15883751,84,46) { link(Data,3515128:Var,[]) } Add(If_else,13194780,336,126) { link(onTrue,5146783:doWork2,[]) link(Op1,6373604:Var3,[(342,107)]) } Add(GetDataEx,6373604,133,102) { link(Data,7612457:Get,[]) } Add(HubEx,5146783,378,126) { link(onEvent,13901629:doWork2,[]) } Add(StrCat,964715,189,126) { Str1="SELECT user FROM $db_posts WHERE post_id = " link(onStrCat,3876122:doQuery,[]) link(Str2,13897244:Post,[(202,25)(27,25)]) } Add(mysql_query,3876122,238,126) { link(onQuery,10717449:doResult,[]) } Add(mysql_result,10717449,287,126) { Index=0 link(onResult,13194780:doCompare,[]) } Add(Inline,518251,35,119) { InlineCode=#17:global $db_posts;| link(onInline,5169540:doCompare,[]) } END_SDK Add(If_else,15124779,105,84) { link(onTrue,11022523:doBuild,[]) link(onFalse,15973546:doEcho,[]) } Add(GetDataEx,13951816,56,67) { Angle=3 link(Data,5295363:Data1,[(34,72)]) } END_SDK Add(If_else,16048050,903,532) { Type=5 Op2=Integer(2) link(onTrue,9445462:doPrint,[]) link(onFalse,7831314:doWork3,[(991,545)]) link(Op1,9643842:Item,[]) } Add(Inline,518251,280,84) { InlineCode=#95:global $db_attach, $db_users, $db_posts, $db_topics, $db_forums, $db_posts_text, $db_word_post;| link(onInline,8954367:doCompare,[]) } Add(mysql_result,640922,378,238) { Index=0 link(onResult,13152306:doCompare,[]) } Add(If_else,6629406,623,133) { Op2=Integer(1) link(onTrue,13271552:doEcho,[]) } Add(GetDataEx,8362043,532,116) { link(Data,11966298:Get,[]) } Add(If_else,7009853,427,133) { Op2=Integer(-1) link(onTrue,16076153:doBuild,[]) link(Op1,8362043:Var1,[(433,121)]) } Add(Hub,6852908,378,133) { OutCount=3 link(onEvent1,7009853:doCompare,[]) link(onEvent2,888842:doPrint,[(418,146)(418,188)]) link(onEvent3,7910131:doStrCat,[(419,153)(419,237)]) } Add(StringBuilder,16076153,476,133) { Mask="SELECT COUNT(*) FROM $db_users WHERE name = '%name%'" Args=#17:Mask=Маска строки|4:name| link(onBuild,11200051:doQuery,[]) link(name,3178869:Var1,[(489,128)]) } Add(GetDataEx,3178869,700,123) { link(Data,13953534:Post,[]) } Add(mysql_query,11200051,525,133) { link(onQuery,11373356:doResult,[]) } Add(HubEx,12465911,1183,42) { Angle=3 link(onEvent,16249278:onRefresh,[(1187,27)]) } Add(Echo,13271552,672,133) { Message="mes\tТакой ник уже занят\r\n" link(onEcho,420167:doReturn,[]) } Add(Return,420167,721,133) { Value=Integer(0) } Add(mysql_query,362130,329,238) { link(onQuery,640922:doResult,[]) } Add(StringBuilder,16769214,280,238) { Mask="SELECT COUNT(*) FROM $db_topics t, $db_posts p WHERE topic_id = %topic% AND t.last_post = p.post_id AND p.user = %user% AND p.user > 0 AND p.time > UNIX_TIMESTAMP() - 24*3600" Args=#17:Mask=Маска строки|5:topic|4:user| link(onBuild,362130:doQuery,[]) link(topic,12270703:Var2,[]) link(user,6145116:Var1,[(300,205)]) } Add(CallFunc,9445462,952,532) { Args=2 Name="post_indexer" link(onPrint,7831314:doWork2,[]) link(Arg1,7723298:Var2,[(958,509)(839,509)]) } Add(mysql_result,11373356,574,133) { Index=0 link(onResult,6629406:doCompare,[]) } Add(StringBuilder,4402789,378,434) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,11271775:doEcho,[]) } Add(GetDataEx,9287367,329,67) { link(Data,5338576:Post,[]) } Add(GetDataEx,4438139,833,123) { Angle=1 link(Data,5774964:Var1,[]) } Add(If_else,8954367,329,84) { Type=2 Op2=Integer(0) link(onTrue,582948:doWork1,[]) link(onFalse,10725285:doBuild,[(368,97)(368,127)(44,127)(44,237)]) link(Op1,9287367:Var2,[]) } Add(Vars,5338576,329,35) { Name="user_id" } Add(Echo,11271775,427,434) { } Add(GetDataEx,5774964,903,123) { link(Data,7717232:Result,[]) } Add(If_else,13152306,427,238) { link(onTrue,9273969:doStrCat,[(467,244)(467,293)]) link(onFalse,6852908:doEvent,[(472,251)(472,219)(366,219)(366,139)]) } Add(GetDataEx,12270703,287,207) { Angle=3 link(Data,7747048:Var3,[]) } Add(mysql_query,12600039,798,287) { link(onQuery,10222290:doEvent,[(835,293)(835,325)(513,325)(513,349)]) } Add(StringBuilder,12056746,700,287) { Mask="%old%\r\n[size=9][color=gray]------------ Дoбавленo в %time%:[/color][/size]\r\n%new%" Args=#17:Mask=Маска строки|3:old|3:new|4:time| link(onBuild,12978664:doBuild,[(737,293)(737,300)]) link(new,14741807:Var1,[(720,282)]) link(time,3243718:Var2,[]) } Add(GetDataEx,14741807,833,277) { link(Data,4438139:Var2,[]) } Add(GetDataEx,16557455,763,270) { Angle=3 link(Data,15190038:Var3,[]) } Add(StrCat,9273969,476,287) { Str1="SELECT pt.text, t.posts, pt.post FROM $db_posts_text pt, $db_topics t WHERE t.last_post = pt.post AND t.topic_id = " link(onStrCat,333518:doQuery,[]) link(Str2,15190038:Var2,[]) } Add(Hub,10222290,525,343) { link(onEvent1,12566818:doRead,[]) link(onEvent2,2847745:doRead,[(565,356)(565,405)]) } Add(mysql_query,333518,525,287) { link(onQuery,5540878:doFetchRow,[]) } Add(GetDataEx,15190038,483,270) { Angle=3 link(Data,11652870:Var2,[(20,275)]) } Add(GetDataEx,10309512,574,326) { link(Data,5540878:Result,[]) } Add(ArrayRead,3789438,616,287) { Index=0 link(onRead,13029563:doAddSlashes,[]) } Add(mysql_fetch_row,5540878,574,287) { link(onFetchRow,3789438:doRead,[]) } Add(ArrayRead,2847745,574,399) { Index=1 link(onRead,8860209:doWork3,[(1040,405)]) link(Array,10309512:Var1,[(580,386)(568,386)(568,331)]) } Add(HubEx,8860209,1036,385) { link(onEvent,15628598:doCalc,[]) } Add(CallFunc,5270105,672,343) { Args=2 Name="post_indexer" link(Arg1,7723298:Var1,[(678,331)]) } Add(GetDataEx,7723298,833,326) { link(Data,14741807:Var2,[]) } Add(ArrayRead,12566818,574,343) { Index=2 link(onRead,3786470:doEvent,[]) link(Array,10309512:Var2,[]) } Add(Echo,7915388,721,343) { Message="cset\tmessage\t\r\n" } Add(Hub,3786470,623,343) { link(onEvent1,5270105:doPrint,[]) link(onEvent2,10275614:doWork2,[]) } Add(HubEx,10275614,763,350) { Angle=1 link(onEvent,16358642:doWork2,[(767,426)]) } Add(AddSlashes,13029563,658,287) { link(onAddSlashes,12056746:doBuild,[]) } Add(HubEx,7831314,987,532) { Angle=3 link(onEvent,935208:doRead,[(991,391)]) } Add(InfoTip,1401462,273,224) { Info=#20:новое или склеенное?| VAlign=2 Width=190 Height=74 Margin=3 } Add(InfoTip,4782405,469,280) { Info=#7:склеить| VAlign=2 Width=379 Height=165 Margin=3 } Add(If_else,11963928,476,182) { Op2=String(Гость) link(onTrue,4326708:doHostByAddr,[]) link(onFalse,5407279:doStrCat,[]) link(Op1,888842:Result,[(482,172)(464,172)(464,223)(433,223)]) } Add(Memory,4818115,658,182) { Extern=1 } Add(HostByAddr,4326708,525,182) { link(onHostByAddr,386428:doWork2,[]) link(IP,9837206:Var1,[(531,177)]) } Add(HubEx,386428,567,182) { link(onEvent,16275280:doHtmlSpecialChars,[]) } Add(GetDataEx,9837206,665,172) { link(Data,16489957:Server,[]) } Add(StrCat,5407279,518,189) { Str1="г. " link(onStrCat,386428:doWork3,[(571,195)]) } Add(HtmlSpecialChars,16275280,602,182) { link(onHtmlSpecialChars,4818115:doValue,[]) } Add(FormatTime,10698720,721,182) { Mask="%H.%M" link(Time,10698720:ServerTime,[(727,170)(731,170)(731,226)(734,226)]) } Add(StringBuilder,10725285,56,231) { Mask="SELECT status FROM $db_topics WHERE topic_id = %topic%" Args=#17:Mask=Маска строки|5:topic| link(onBuild,269400:doQuery,[]) link(topic,7747048:Var2,[]) } Add(mysql_query,269400,112,231) { link(onQuery,5271785:doResult,[]) } Add(mysql_result,5271785,161,231) { Index=0 link(onResult,8027395:doCompare,[]) } Add(If_else,8027395,210,231) { Op2=Integer(1) link(onTrue,15973546:doEcho,[(256,237)(256,270)(205,270)(205,293)]) link(onFalse,16769214:doBuild,[]) } Add(GetDataEx,7747048,63,207) { Angle=3 link(Data,11652870:Var3,[]) } Add(Echo,15973546,217,287) { Message="mes\tОтправка сообщений в эту тему закрыта\r\n" } Add(StringBuilder,12978664,749,294) { Mask="UPDATE $db_posts_text pt, $db_posts p, $db_topics t SET pt.text = '%text%', pt.edittime='%time%', pt.edituid='%uid%' WHERE p.post_id = pt.post AND pt.post = t.last_post AND t.topic_id = %topic%" Args=#17:Mask=Маска строки|4:text|5:topic|4:time|3:uid| link(onBuild,12600039:doExec,[]) link(topic,16557455:Var2,[]) link(time,3243718:Var3,[(776,278)]) link(uid,8362043:Var3,[(783,121)]) } Add(GetDataEx,3243718,721,273) { link(Data,10698720:Result,[]) } END_SDK Add(Case,7118259,252,49) { Value=Integer(4) link(onNextCase,2179928:doCase,[]) link(onTrue,2341708:doData,[(292,62)(292,104)]) AddHint(2,-26,21,13,Value) } Add(DoData,2341708,301,98) { link(onEventData,11838107:doAddPost,[]) link(Data,14787791:Var1,[(307,90)(244,90)]) } Add(MultiElementEx,16575692,105,154) { @Hint=#50:Получение по ID поста ID топика=Получение родителя| CodeType=1 link(onCheckPost,633338:doShowTopic,[]) } BEGIN_SDK Add(EditMultiEx,11931803,21,21) { WorkCount=#11:doCheckPost| EventCount=#11:onCheckPost| Width=734 Height=130 link(doCheckPost,6967371:doEvent,[(35,27)(35,104)]) } Add(IsSet,10144086,98,98) { link(onCheck,2076618:doCompare,[]) link(Var,16214155:Var1,[(104,79)]) } Add(Vars,166598,98,35) { Name="p" Point(Get) } Add(If_else,2076618,147,98) { link(onTrue,5445908:doStrCat,[]) } Add(StrCat,5445908,196,98) { Str1="SELECT topic FROM $db_posts WHERE post_id = " link(onStrCat,215792:doQuery,[]) link(Str2,3265523:Var2,[]) } Add(GetDataEx,16214155,105,74) { link(Data,166598:Get,[]) } Add(mysql_query,215792,245,98) { link(onQuery,15511630:doResult,[]) } Add(mysql_result,15511630,294,98) { Index=0 link(onResult,12408386:doSet,[(334,104)(334,111)]) } Add(GlobalVar,10033689,343,42) { Name="_GET" } Add(ArrayItem,12408386,343,98) { Name="t" link(onGet,5399959:doBuild,[]) link(Array,2146010:Var2,[]) } Add(StringBuilder,5399959,392,98) { Mask="SELECT COUNT(*) FROM $db_posts WHERE post_id < %post% AND topic = %topic%" Args=#17:Mask=Маска строки|4:post|5:topic| link(onBuild,6190147:doQuery,[]) link(post,3265523:Var3,[(405,79)]) } Add(GetDataEx,3265523,203,74) { Angle=3 link(Data,16214155:Var3,[]) } Add(mysql_query,6190147,441,98) { link(onQuery,9371751:doResult,[]) } Add(mysql_result,9371751,490,98) { Index=0 link(onResult,11057188:doOperation,[]) } Add(ArrayItem,4346478,686,98) { Name="s" link(Array,2146010:Var3,[(692,72)]) } Add(GetDataEx,2146010,343,67) { link(Data,10033689:Var,[]) } Add(Hub,6967371,49,98) { link(onEvent1,10144086:doCheck,[]) link(onEvent2,11931803:onCheckPost,[(91,111)(91,27)]) } Add(Math,11057188,539,98) { OpType=3 Op2=15 link(onResult,13443891:doStrInt,[]) } Add(StrInt,13443891,588,98) { link(onStrInt,13391053:doOperation,[]) } Add(Math,13391053,637,98) { OpType=2 Op2=15 link(onResult,4346478:doSet,[(677,104)(677,111)]) } END_SDK Add(HubEx,148788,532,84) { Angle=1 link(onEvent,10570107:doRefreshFiles,[(536,104)]) } Add(Case,1463163,546,49) { Value=Integer(9) link(onNextCase,6268207:doCase,[]) link(onTrue,8458140:doRemoveAttach,[(586,62)(586,104)]) AddHint(1,-26,21,13,Value) } Add(CallFunc,888842,847,98) { Args=1 Name="cvt_text" IgnoreResult=1 link(onPrint,11761106:doSplitPost,[]) link(Arg1,8208146:Post,[]) } Add(Vars,8208146,847,49) { Name="title" Point(Get) } Add(MultiElementEx,11761106,896,98) { @Hint=#16:Разделение поста| link(Post,13636385:Var3,[(902,89)]) } BEGIN_SDK Add(EditMultiEx,15420624,21,21) { WorkCount=#11:doSplitPost| DataCount=#4:Post|5:title| Width=538 Height=235 link(doSplitPost,518251:doInline,[(31,27)(31,146)]) } Add(Inline,518251,42,140) { InlineCode=#53:global $db_attach, $db_posts, $db_topics, $db_forums;| link(onInline,7502194:doCompare,[]) } Add(MultiElementEx,7502194,91,140) { @Hint=#13:Проверка прав| link(onTrue,10069349:doCompare,[]) link(Str2,3680778:Var2,[]) } BEGIN_SDK Add(EditMultiEx,12408487,21,21) { WorkCount=#9:doCompare| EventCount=#6:onTrue| DataCount=#4:Str2| Width=622 Height=214 link(doCompare,518251:doInline,[(28,27)(28,139)]) } Add(StrCat,1707742,182,140) { Str1="SELECT u.rank, u.user_id FROM $db_topics t, $db_users u, $db_posts p WHERE p.topic = t.topic_id AND t.user = u.user_id AND p.post_id = " link(onStrCat,673294:doQuery,[]) link(Str2,12408487:Str2,[(195,120)(27,120)]) } Add(mysql_query,673294,231,140) { link(onQuery,8274278:doNumRows,[]) } Add(mysql_num_rows,8274278,280,140) { link(onNumRows,16144:doCompare,[]) } Add(If_else,16144,329,140) { link(onTrue,11499882:doFetchArray,[]) link(onFalse,3042342:doEcho,[(373,153)(373,195)]) } Add(Echo,3042342,385,189) { Message="mes\tСообщение не найдено\r\n" } Add(mysql_fetch_array,11499882,385,140) { link(onFetchArray,12050849:doGet,[]) link(Query,673294:Result,[(391,128)(319,128)(319,184)(237,184)]) } Add(If_else,7399136,133,133) { Op2=Integer(1) link(onTrue,11136504:doWork2,[(173,139)(173,62)]) link(onFalse,1707742:doStrCat,[]) link(Op1,3276665:Get,[]) } Add(GlobalVar,12808676,133,35) { Name="udata" } Add(ArrayItem,3276665,133,84) { Name="level" link(Array,11548631:Var2,[]) } Add(ChanelToIndex,11697700,595,49) { link(onIndex,12408487:onTrue,[(635,55)(635,27)]) } Add(If_else,287342,483,140) { link(onTrue,10107592:doCompare,[]) link(Op1,2829313:Get,[]) } Add(ArrayItem,12050849,434,140) { Name="user_id" link(onGet,287342:doCompare,[]) } Add(ArrayItem,2829313,483,91) { Name="user_id" link(Array,11548631:Var3,[(489,72)]) } Add(GetDataEx,11548631,133,67) { link(Data,12808676:Var,[]) } Add(If_else,10107592,532,140) { Type=2 Op2=Integer(0) link(onTrue,11136504:doWork3,[(585,146)]) link(Op1,14762065:Get,[]) } Add(ArrayItem,14762065,532,91) { Name="rank" link(Array,11499882:Result,[(538,79)(424,79)(424,181)(391,181)]) } Add(HubEx,11136504,581,56) { link(onEvent,11697700:doWork2,[]) } Add(Hub,13243036,84,133) { link(onEvent1,7399136:doCompare,[]) link(onEvent2,11697700:doWork1,[(125,146)(125,55)]) } Add(Inline,518251,35,133) { InlineCode=#52:global $db_users, $db_posts, $db_topics, $db_forums;| link(onInline,13243036:doEvent,[]) } END_SDK Add(If_else,10069349,140,140) { link(onTrue,16494249:doStrCat,[]) link(onFalse,3042342:doEcho,[(184,153)(184,202)]) } Add(Echo,3042342,196,196) { Message="mes\tВы не являетесь автором темы или у вас не хватает прав\r\n" } Add(StrCat,16494249,196,140) { Str1="SELECT IF(t.first_post = p.post_id, 0, 1), p.topic, t.forum FROM $db_topics t, $db_posts p WHERE t.topic_id = p.topic AND p.post_id = " link(onStrCat,16162404:doQuery,[]) link(Str2,3234907:Var2,[]) } Add(GetDataEx,3680778,91,109) { link(Data,15420624:Post,[(97,65)(27,65)]) } Add(mysql_query,16162404,245,140) { link(onQuery,14333658:doFetchRow,[]) } Add(Echo,9121240,448,196) { Message="mes\tТопик не может быть разбит начиная с первого поста\r\n" } Add(If_else,16234210,392,140) { link(onTrue,6751992:doEvent,[]) link(onFalse,9121240:doEcho,[(436,153)(436,202)]) } Add(mysql_fetch_row,14333658,294,140) { link(onFetchRow,2245350:doRead,[]) } Add(ArrayRead,2245350,343,140) { Index=0 link(onRead,16234210:doCompare,[]) } Add(MultiElementEx,9737774,497,140) { CodeType=1 link(Array,14333658:Result,[(503,128)(334,128)(334,182)(300,182)]) link(title,15420624:title,[(510,57)(34,57)]) link(fpost,3234907:Var3,[(517,114)]) } BEGIN_SDK Add(EditMultiEx,4680246,21,21) { WorkCount=#10:doAddTopic| DataCount=#5:Array|5:title|5:fpost| Width=692 Height=221 link(doAddTopic,10511144:doBuild,[(45,27)(45,125)]) } Add(StringBuilder,10511144,91,119) { Mask="INSERT INTO $db_topics(forum, title, user, time, first_post) VALUES(%forum%, '%title%', %user%, UNIX_TIMESTAMP(), %fpost%)" Args=#17:Mask=Маска строки|5:forum|5:title|4:user|5:fpost| link(onBuild,16439119:doExec,[(138,125)(138,132)]) link(forum,909571:Var2,[(104,111)(97,111)]) link(title,4680246:title,[(111,34)(34,34)]) link(user,9577889:Get,[(118,104)(146,104)]) link(fpost,1869247:Var2,[]) } Add(ArrayRead,11035265,91,56) { Index=2 link(Array,10826660:Var2,[]) } Add(GlobalVar,7182627,140,28) { Name="udata" } Add(ArrayItem,9577889,140,63) { Name="user_id" link(Array,7182627:Var,[]) } Add(mysql_query,16439119,147,119) { Point(LastInsertId) link(onQuery,6522546:doData,[]) } Add(StrCat,3972282,441,119) { Str1="UPDATE $db_forums SET topics = topics + 1 WHERE forum_id = " link(onStrCat,11342966:doExec,[(481,125)(481,132)]) link(Str2,909571:Var3,[(454,100)]) } Add(GetDataEx,909571,91,95) { link(Data,11035265:Item,[]) } Add(mysql_query,11342966,490,119) { link(onQuery,2694137:doStrCat,[]) } Add(StringBuilder,10342089,343,119) { Mask="UPDATE $db_posts SET topic = %topic% WHERE topic = %oldtopic% AND post_id >= %post%" Args=#17:Mask=Маска строки|5:topic|4:post|8:oldtopic| link(onBuild,2318416:doExec,[(383,125)(383,132)]) link(post,1869247:Var3,[(363,107)]) link(oldtopic,2714253:Var1,[(370,107)]) } Add(GetDataEx,1869247,119,102) { link(Data,4680246:fpost,[(125,29)(41,29)]) } Add(mysql_query,2318416,392,119) { Point(LastInsertId) link(onQuery,3972282:doStrCat,[]) } Add(StrCat,2694137,539,119) { Str1="UPDATE $db_topics t SET t.posts = (SELECT COUNT(*) FROM $db_posts WHERE topic = t.topic_id), t.last_post = (SELECT post_id FROM hiasm_posts WHERE topic = t.topic_id ORDER BY post_id DESC LIMIT 1) WHERE t.topic_id = " link(onStrCat,10250348:doExec,[(579,125)(579,132)]) link(Str2,2714253:Var2,[]) } Add(mysql_query,10250348,588,119) { } Add(ArrayRead,4759904,546,63) { Index=1 link(Array,10826660:Var3,[(552,44)]) } Add(GetDataEx,10826660,91,39) { Angle=3 link(Data,4680246:Array,[(27,44)]) } Add(Echo,11271775,138,192) { } Add(StringBuilder,4402789,89,192) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,11271775:doEcho,[]) } Add(GetDataEx,2714253,546,102) { link(Data,4759904:Item,[]) } Add(DoData,6522546,196,119) { link(onEventData,9050561:doValue,[]) link(Data,16439119:LastInsertId,[(202,112)(186,112)(186,163)(160,163)]) } Add(Hub,5921902,294,119) { link(onEvent1,10342089:doBuild,[]) link(onEvent2,15555952:doStrCat,[(334,132)(334,174)]) } Add(StrCat,15555952,343,168) { Str1="UPDATE $db_topics t SET t.posts = (SELECT COUNT(*) FROM $db_posts WHERE topic = t.topic_id), t.last_post = (SELECT post_id FROM hiasm_posts WHERE topic = t.topic_id ORDER BY post_id DESC LIMIT 1) WHERE t.topic_id = " link(onStrCat,11261984:doExec,[(383,174)(383,181)]) } Add(mysql_query,11261984,392,168) { } Add(Memory,9050561,245,119) { link(onData,5921902:doEvent,[]) } END_SDK Add(Hub,6751992,448,140) { link(onEvent1,9737774:doAddTopic,[]) link(onEvent2,2201344:doEcho,[(488,153)(488,202)]) } Add(GetDataEx,3234907,203,109) { Angle=3 link(Data,3680778:Var3,[]) } Add(Echo,11271775,371,196) { } Add(StringBuilder,4402789,322,196) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,11271775:doEcho,[]) } Add(Echo,2201344,497,196) { Message="ref\r\n" } END_SDK Add(Case,6810412,798,49) { Value=Integer(30) link(onNextCase,201647:doCase,[]) link(onTrue,888842:doPrint,[(840,62)(840,104)]) AddHint(-2,-26,27,13,Value) } Add(Case,6268207,595,49) { Value=Integer(11) link(onNextCase,6505031:doCase,[]) link(onTrue,2245258:doAddTopic,[(636,62)(636,104)]) AddHint(0,-26,27,13,Value) } Add(Case,6505031,644,49) { Value=Integer(12) link(onNextCase,13489574:doCase,[]) link(onTrue,10033468:doEditPost,[(684,62)(684,104)]) AddHint(0,-26,27,13,Value) } Add(MultiElementEx,10033468,693,98) { @Hint=#12:Правка поста| CodeType=1 } BEGIN_SDK Add(EditMultiEx,3854639,21,21) { WorkCount=#10:doEditPost| Width=965 Height=291 link(doEditPost,8385655:doStrCat,[(39,27)(39,146)]) } Add(Echo,9037635,301,140) { link(onEcho,12803116:doBuild,[]) } Add(StringBuilder,5634616,252,140) { Mask="cset\tmessage\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,9037635:doEcho,[]) } Add(StrCat,8385655,56,140) { Str1="SELECT text FROM $db_posts_text WHERE post = " link(onStrCat,5038233:doQuery,[]) link(Str2,9889964:Var2,[]) } Add(Vars,9321514,56,35) { Name="p" Point(Get) } Add(StrInt,7065403,63,84) { link(Text,1009814:Var2,[]) } Add(mysql_query,5038233,105,140) { link(onQuery,4525782:doResult,[]) } Add(mysql_result,4525782,154,140) { Index=0 link(onResult,10755562:doReplace,[]) } Add(Replace,10755562,203,140) { SubStr="\r\n" DestStr="\n" link(onReplace,5634616:doBuild,[]) } Add(Echo,10428188,399,140) { link(onEcho,8564476:doCheckPerm,[]) } Add(StringBuilder,12803116,350,140) { Mask="cset\tuser_id\t%user_id%\r\n" Args=#17:Mask=Маска строки|7:user_id| link(onBuild,10428188:doEcho,[]) link(user_id,1009814:Var3,[(363,72)]) } Add(GetDataEx,1009814,63,67) { link(Data,9321514:Get,[]) } Add(StringBuilder,11588436,693,266) { Mask="UPDATE $db_attach SET type = 0, post_id = %user% WHERE post_id = %post%" Args=#17:Mask=Маска строки|4:post|4:user| link(onBuild,15808097:doExec,[(733,272)(733,279)]) link(post,14095766:Var3,[(706,128)]) link(user,7591753:Get,[]) } Add(GetDataEx,9889964,63,123) { link(Data,7065403:Result,[]) } Add(GlobalVar,16423925,707,189) { Name="udata" } Add(ArrayItem,7591753,707,217) { Name="user_id" link(Array,16423925:Var,[]) } Add(mysql_query,15808097,742,266) { link(onQuery,5265183:doRefreshFiles,[]) } Add(MultiElementEx,8564476,448,140) { elink(2105528) link(onCheckPerm,11595021:doCompare,[]) link(Post,15976347:Var2,[]) } Add(If_else,11595021,497,140) { link(onTrue,13296699:doStrCat,[]) } Add(MultiElementEx,5265183,794,266) { @Hint=#18:Обновление аттачей| elink(10570107) } Add(StrCat,13296699,546,140) { Str1="SELECT CONCAT('./xf/attach/', u.cmd, '/', a.file) AS path, a.file FROM $db_attach a, $db_upload u WHERE a.type = u.upload_id AND a.post_id = " link(onStrCat,12998289:doQuery,[]) link(Str2,14095766:Var2,[]) } Add(GetDataEx,14095766,553,123) { Angle=3 link(Data,15976347:Var3,[]) } Add(mysql_query,12998289,595,140) { link(onQuery,3312799:doFor,[]) } Add(mysql_fetch_row,9102620,693,140) { link(onFetchRow,15410901:doFileExists,[(733,146)(733,167)]) link(Query,12998289:Result,[(699,132)(586,132)(586,184)(601,184)]) } Add(ArrayRead,7221672,840,140) { Index=1 link(onRead,8113347:doStrCat,[]) link(Array,13912664:Var2,[]) } Add(FileTools,10754395,938,140) { link(FileName,15420611:Var2,[]) } Add(ArrayRead,4881567,938,84) { Index=0 link(Array,13912664:Var3,[(944,72)]) } Add(StrCat,8113347,889,140) { Str1="./xf/attach/tmp/" link(onStrCat,10754395:doMove,[]) } Add(For,3312799,644,140) { link(onEvent,9102620:doFetchRow,[]) link(onStop,11588436:doBuild,[(684,153)(684,272)]) } Add(GetDataEx,15976347,448,123) { Angle=3 link(Data,9889964:Var3,[]) } Add(FileTools,15410901,742,140) { Point(doFileExists) link(onEnd,10998556:doCompare,[]) link(FileName,15420611:Var1,[(748,128)]) } Add(If_else,10998556,791,140) { link(onTrue,7221672:doRead,[]) } Add(GetDataEx,15420611,938,123) { link(Data,4881567:Item,[]) } Add(GetDataEx,13912664,840,67) { Angle=3 link(Data,9102620:Result,[(784,72)(784,184)(699,184)]) } END_SDK Add(Case,13489574,693,49) { Value=Integer(13) link(onNextCase,6810412:doCase,[]) link(onTrue,6281058:doWork1,[(731,62)(731,104)]) AddHint(0,-26,27,13,Value) } Add(GetDataEx,14787791,238,126) { Angle=3 link(Data,2084923:Var3,[]) } Add(MultiElementEx,6281058,735,98) { @Hint=#14:Удаление поста| CodeType=1 link(onEventData,8114354:doWork1,[(782,104)]) link(Arg1,13636385:Var1,[(741,89)]) } BEGIN_SDK Add(EditMultiEx,12408134,21,21) { WorkCount=#7:doWork1| EventCount=#11:onEventData| DataCount=#4:Arg1| Width=447 Height=172 link(doWork1,4655031:doWork1,[(35,27)(35,55)]) } Add(Echo,15973546,147,105) { Message="mes\tОтказано в доступе\r\n" } Add(If_else,15124779,98,49) { link(onTrue,10663961:doStrCat,[]) link(onFalse,15973546:doEcho,[(140,62)(140,111)]) } Add(MultiElement,4655031,49,49) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,17) { EventCount=1 WorkCount=1 Width=251 Height=186 link(doWork1,5169540:doCompare,[(26,23)(26,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,13901629:doWork2,[(135,132)(135,139)]) link(onFalse,13901629:doWork1,[(135,139)(135,132)]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(238,132)(238,23)]) } Add(If_else,4433799,91,154) { Type=2 Op2=Integer(0) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } END_SDK Add(DoData,13829225,413,49) { Data=Integer(0) link(onEventData,12408134:onEventData,[(457,55)(457,27)]) } Add(CallFunc,13858308,364,49) { Args=1 Name="remove_post" link(onPrint,13829225:doData,[]) link(Arg1,13204583:Var3,[(370,37)]) } Add(StrCat,10663961,154,49) { Str1="SELECT t.first_post FROM hiasm_topics t, hiasm_posts p WHERE t.topic_id = p.topic AND p.post_id = " link(onStrCat,9311893:doQuery,[]) link(Str2,7197344:Var2,[]) } Add(mysql_query,9311893,203,49) { link(onQuery,6508499:doResult,[]) } Add(mysql_result,6508499,252,49) { Index=0 link(onResult,4760108:doCompare,[]) } Add(If_else,4760108,301,49) { link(onTrue,8155869:doEcho,[(349,55)(349,111)]) link(onFalse,13858308:doPrint,[(349,62)(349,55)]) link(Op2,13204583:Var2,[]) } Add(GetDataEx,7197344,161,32) { Angle=3 link(Data,12408134:Arg1,[(27,37)]) } Add(GetDataEx,13204583,308,32) { Angle=3 link(Data,7197344:Var3,[]) } Add(Echo,8155869,364,105) { Message="mes\tНевозможно удалить первое сообщение топика" } END_SDK Add(Vars,1311374,1218,49) { Name="u" Point(Get) } Add(MultiElementEx,1734004,1225,98) { @Hint=#12:Energy image| link(user,1311374:Get,[]) } BEGIN_SDK Add(EditMultiEx,12653287,21,21) { WorkCount=#13:doCreateImage| DataCount=#4:user| Width=706 Height=438 link(doCreateImage,3933494:doEvent,[(35,27)(35,90)]) } Add(GD_Start,2694856,168,238) { Width=102 Height=14 link(onCreateImage,3516635:doEvent,[]) } Add(GD_Colour,3456078,308,238) { Red=220 Green=220 Blue=220 } Add(GD_FilledRectangle,16712191,301,364) { link(onFilledRectangle,1571266:doCreateColor,[]) link(Color,3456078:Color,[]) link(Point1,9909478:Var2,[]) link(Point2,733708:Point,[(328,341)(363,341)]) } Add(Hub,3516635,238,238) { OutCount=5 link(onEvent1,3456078:doCreateColor,[]) link(onEvent2,16712191:doFilledRectangle,[(286,251)(286,370)]) link(onEvent3,5185491:doCreateColor,[(310,258)(310,251)]) link(onEvent4,11731876:doDrawText,[(296,265)(296,419)]) } Add(PointXY,1240856,315,294) { } Add(PointXY,733708,357,294) { X=101 Y=13 } Add(GD_Text,11731876,322,413) { X=45 Size=2 link(Text,16675937:Result,[(335,405)(475,405)]) link(Color,1571266:Color,[]) } Add(GD_Colour,1571266,350,364) { link(onCreateColor,10068002:doFilledRectangle,[]) } Add(GD_FilledRectangle,10068002,399,364) { link(HImage,4654526:Var3,[(405,289)]) link(Point1,9909478:Var3,[(419,345)]) link(Point2,5142066:Point,[]) } Add(GetDataEx,9909478,315,340) { link(Data,1240856:Point,[]) } Add(PointXY,5142066,420,294) { X=101 Y=13 } Add(GD_FilledRectangle,7556081,399,245) { link(HImage,4654526:Var1,[(405,233)(391,233)]) link(Point1,15509066:Point,[(419,226)(384,226)]) link(Point2,13026437:Point,[]) } Add(PointXY,13026437,420,175) { Y=12 link(Y,7623812:Var1,[(433,170)]) } Add(GD_Colour,5185491,350,245) { Red=164 Green=164 Blue=164 link(onCreateColor,7556081:doFilledRectangle,[]) } Add(GetDataEx,4654526,385,284) { Angle=3 link(Data,2694856:HImage,[(174,289)]) } Add(PointXY,15509066,378,175) { X=1 Y=1 } Add(Hub,3933494,49,84) { OutCount=3 link(onEvent1,2270030:doCompare,[]) link(onEvent2,2694856:doCreateImage,[(97,97)(97,244)]) } Add(StrCat,14207862,357,84) { Str1="SELECT ((req_time + UNIX_TIMESTAMP() - time)/2) AS energy FROM hiasm_sessions WHERE user_id = " link(onStrCat,5503384:doQuery,[]) link(Str2,11546886:Var3,[(370,58)]) } Add(StrCat,7153884,161,84) { Str1="SELECT * FROM hiasm_sessions WHERE user_id = " link(onStrCat,4080920:doQuery,[]) link(Str2,11546886:Var2,[]) } Add(mysql_num_rows,10941982,259,84) { link(onNumRows,1176532:doCompare,[]) } Add(If_else,1176532,308,84) { link(onTrue,14207862:doStrCat,[]) link(onFalse,7792393:doWork1,[(347,97)]) } Add(Header,9471444,357,133) { Param="Location: xx/offline.png" link(onHeader,14631708:doDie,[]) } Add(Die,14631708,406,133) { } Add(mysql_result,15037909,455,84) { Index=0 link(onResult,14391580:doCompare,[]) } Add(mysql_query,4080920,210,84) { link(onQuery,10941982:doNumRows,[]) } Add(mysql_query,5503384,406,84) { link(onQuery,15037909:doResult,[]) } Add(If_else,14391580,504,84) { Type=2 Op2=Integer(100) link(onTrue,3385988:doData,[]) link(onFalse,11244324:doOperation,[(544,97)(544,139)]) } Add(Memory,1000392,602,84) { Default=Integer(0) Extern=1 } Add(DoData,3385988,553,84) { Data=Integer(0) link(onEventData,8548619:doWork2,[]) } Add(Math,11244324,553,133) { OpType=1 Op1=100 link(onResult,8548619:doWork3,[(592,139)]) link(Op2,15037909:Result,[(566,125)(461,125)]) } Add(HubEx,8548619,588,84) { link(onEvent,1000392:doValue,[]) } Add(StrCat,16675937,469,364) { Str2="%" link(Str2,7623812:Var2,[]) } Add(GetDataEx,11546886,168,53) { Angle=3 link(Data,13282949:Var3,[]) } Add(If_else,2270030,105,84) { Type=2 Op2=Integer(0) link(onTrue,7153884:doStrCat,[]) link(onFalse,7792393:doWork2,[(152,97)(152,139)]) link(Op1,13282949:Var2,[]) } Add(GetDataEx,13282949,105,53) { Angle=3 link(Data,12653287:user,[(27,58)]) } Add(HubEx,7792393,343,133) { link(onEvent,9471444:doHeader,[]) } Add(GetDataEx,7623812,476,165) { Angle=1 link(Data,1000392:Value,[(608,170)]) } END_SDK Add(Case,5836599,1169,49) { Value=Integer(51) link(onNextCase,7734503:doCase,[]) link(onTrue,1734004:doCreateImage,[(1209,62)(1209,104)]) AddHint(1,-26,27,13,Value) } Add(HubEx,8820308,504,140) { Angle=2 link(onEvent,16660460:doWork1,[(249,146)]) } Add(Vars,12990111,742,49) { Name="p" Point(Get) } Add(Vars,16004762,1127,49) { Name="pass" Point(Get) } Add(MultiElementEx,14659103,497,98) { @Hint=#6:Upload| CodeType=1 } BEGIN_SDK Add(EditMultiEx,2428208,21,21) { WorkCount=#8:doUpload| Width=755 Height=431 link(doUpload,10911326:doWork1,[(39,27)(39,321)]) } Add(Echo,11763348,658,203) { } Add(HTML_Collector,8103710,609,203) { link(onPrint,11763348:doEcho,[]) } BEGIN_SDK Add(HCEditor,12651726,21,21) { Width=412 Height=214 link(doPrint,11526661:doPrint,[(35,27)(35,97)]) } Add(HTM_Script,16433042,217,140) { link(onPrint,5446197:doEvent,[]) } Add(VisualText,14058898,315,98) { Lines=#18:forum_serv.php?q=8| Width=109 Point(Text) } Add(Window,12565359,316,190) { Name="attach" } Add(Hub,5446197,266,140) { link(onEvent1,13315838:doPrint,[]) link(onEvent2,12565359:doClose,[(307,153)(307,203)]) } Add(CallFunc,13315838,315,140) { Args=1 Name="window.opener.req_serv" link(Arg1,14058898:Text,[]) } Add(Hub,7873556,105,91) { link(onEvent1,6877182:doPrint,[]) link(onEvent2,3012081:doPrint,[(149,104)(149,146)]) } Add(HTM_Html,11526661,49,91) { link(onPrint,7873556:doEvent,[]) } Add(HTM_Head,6877182,161,91) { } Add(HTM_Body,3012081,161,140) { link(onPrint,16433042:doPrint,[]) } END_SDK Add(FileTools,11139754,308,203) { link(onEnd,14942120:doBuild,[]) link(FileName,13183368:PostFiles,[]) link(NewFileName,9046450:Var2,[]) } Add(Vars,13183368,301,84) { Name="file" Param="tmp_name" Point(PostFiles) } Add(Memory,7580681,245,266) { Default=Integer(0) } Add(Vars,12899866,343,35) { Name="file" Param="name" Point(PostFiles) } Add(StrCat,4347486,315,147) { Str1="xf/attach/tmp/" link(Str2,10316730:Var1,[(328,135)]) } Add(StringBuilder,14942120,413,203) { Mask="INSERT INTO $db_attach(post_id, size, file, type) VALUES(%user%, %size%, '%file%', 0)" Args=#17:Mask=Маска строки|4:size|4:file|4:user| link(onBuild,2942429:doExec,[(453,209)(453,216)]) link(size,8819669:Var1,[(426,195)(405,195)]) link(file,10316730:Var3,[(433,135)]) link(user,11399358:Get,[]) } Add(mysql_query,2942429,462,203) { link(onQuery,6208564:doBuild,[]) } Add(GetDataEx,10316730,350,130) { link(Data,15238315:Result,[]) } Add(GlobalVar,15978721,434,49) { Name="udata" } Add(ArrayItem,11399358,434,84) { Name="user_id" link(Array,15978721:Var,[]) } Add(MultiElement,10911326,56,315) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(31,27)(31,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,14169986:doWork1,[(158,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(240,132)(240,27)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(0) link(onTrue,14169986:doWork2,[]) link(onFalse,13901629:doWork1,[(163,146)(163,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,14169986,154,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(If_else,15124779,105,315) { link(onTrue,10872327:doFor,[]) link(onFalse,3062936:doPrint,[(145,328)(145,370)]) } Add(HTML_Collector,3062936,154,364) { link(onPrint,4524026:doEcho,[]) } BEGIN_SDK Add(HCEditor,12651726,21,21) { Width=321 Height=172 link(doPrint,11526661:doPrint,[(35,27)(35,97)]) } Add(HTM_Html,11526661,49,91) { link(onPrint,7873556:doEvent,[]) } Add(HTM_Head,6877182,161,91) { } Add(HTM_Body,3012081,161,140) { link(onPrint,4851354:doPrint,[]) } Add(Hub,7873556,105,91) { link(onEvent1,6877182:doPrint,[]) link(onEvent2,3012081:doPrint,[(149,104)(149,146)]) } Add(HTM_Div,4851354,210,140) { Style="text-align: center;" link(onPrint,16039146:doEcho,[]) } Add(Echo,16039146,259,140) { Message="У вас не хватает прав для выполнения этой операции" } END_SDK Add(Echo,4524026,203,364) { } Add(StrArray,12339664,203,210) { Strings=#4:.rar|4:.zip|4:.sha|4:.jpg|4:.png|4:.gif|3:.js|4:.ico|3:.7z| AddHint(-65,-63,30,117,Strings) } Add(For,10872327,203,315) { link(onEvent,15056695:doRead,[]) link(onStop,11855922:doEcho,[(243,328)(243,370)]) link(End,1945451:Size,[]) link(Start,7580681:Value,[(216,307)(251,307)]) } Add(ArraySize,1945451,203,266) { link(Array,10015803:Var2,[]) } Add(Position,11967492,350,315) { link(onSearch,3360353:doCompare,[]) link(Text,4233768:Result,[]) } Add(ArrayRead,15056695,252,315) { link(onRead,2589470:doStrCat,[]) link(Array,10015803:Var3,[(258,254)]) } Add(GetDataEx,10015803,203,249) { link(Data,12339664:Array,[]) } Add(If_else,3360353,399,315) { link(onTrue,851588:doEvent,[]) } Add(Hub,851588,448,315) { link(onEvent1,8582316:doCompare,[]) link(onEvent2,8254525:doDie,[(480,328)(480,363)]) } Add(StrCat,4233768,350,266) { Str2="/" link(Str1,10316730:Var2,[]) } Add(StrCat,2589470,301,315) { Str2="/" link(onStrCat,11967492:doSearch,[]) } Add(If_else,8582316,497,315) { Type=1 Op2=Integer(786432) link(onTrue,1869845:doFileExists,[(541,321)(541,300)]) link(onFalse,13217969:doDie,[]) link(Op1,5418651:Var2,[]) } Add(GetDataEx,8819669,399,242) { Angle=3 link(Data,11139754:Size,[(314,247)]) } Add(FileTools,1869845,553,273) { Point(doFileExists) link(onEnd,280233:doCompare,[]) link(FileName,9046450:Var3,[(559,191)]) } Add(If_else,280233,602,273) { link(onTrue,16258409:doDie,[]) link(onFalse,11139754:doCopy,[(642,286)(642,259)(296,259)(296,216)]) } Add(StrCase,15238315,350,84) { link(SrcStr,12899866:PostFiles,[]) } Add(GetDataEx,9046450,315,186) { link(Data,4347486:Result,[]) } Add(Echo,11855922,252,364) { Message="Расширение файла не поддерживается" AddHint(-42,46,131,26,Message) } Add(StringBuilder,6208564,511,203) { Mask="UPDATE hiasm_attach SET value = value + %size% WHERE id = 1" Args=#17:Mask=Маска строки|4:size| link(onBuild,3608351:doExec,[(551,209)(551,216)]) link(size,5418651:Var1,[(524,194)(503,194)]) } Add(mysql_query,3608351,560,203) { link(onQuery,8103710:doPrint,[]) } Add(GetDataEx,5418651,497,242) { Angle=3 link(Data,8819669:Var3,[]) } Add(Die,8254525,497,357) { } Add(Die,13217969,546,322) { Text="Файл слишком большого размера" AddHint(0,57,192,13,Text) } Add(Die,16258409,658,273) { Text="Файл c таким именем уже существует" AddHint(-67,55,155,26,Text) } END_SDK Add(MultiElementEx,2245258,644,98) { @Hint=#23:Новый топик=Новый топик| CodeType=1 } BEGIN_SDK Add(EditMultiEx,4775824,19,21) { WorkCount=#10:doAddTopic| Width=1154 Height=438 link(doAddTopic,887948:doCheck,[(33,27)(33,167)]) } Add(StringBuilder,12330085,152,161) { Mask="INSERT INTO $db_topics(forum, title, user, time, posts) VALUES(%forum%, '%title%', %user%, UNIX_TIMESTAMP(), 0)" Args=#17:Mask=Маска строки|5:forum|5:title|4:user| link(onBuild,1431161:doExec,[(192,167)(192,174)]) link(forum,3542889:Var2,[]) link(title,888842:Result,[(172,142)(207,142)]) link(user,9559646:Var1,[(179,142)]) } Add(Vars,9321514,152,49) { Name="f" Point(Get) } Add(StrInt,7065403,159,98) { link(Text,9321514:Get,[]) } Add(Memory,14816776,299,161) { link(onData,5424678:doEvent,[]) } Add(DoData,13976558,250,161) { link(onEventData,14816776:doValue,[]) link(Data,1431161:LastInsertId,[(256,153)(240,153)(240,199)(214,199)]) } Add(Inline,518251,145,245) { InlineCode=#18:global $db_attach;| } Add(mysql_query,1431161,201,161) { Point(LastInsertId) link(onQuery,13976558:doData,[]) } Add(Vars,5565284,201,49) { Name="title" } Add(GlobalVar,13985932,243,49) { Name="udata" } Add(ArrayItem,12615450,243,98) { Name="user_id" link(Array,13985932:Var,[]) } Add(Hub,5424678,348,161) { OutCount=5 link(onEvent1,14046217:doAddPost,[(392,167)(392,104)]) link(onEvent2,12489559:doStrCat,[(392,174)(392,342)]) link(onEvent3,14160486:doStrCat,[(392,181)(392,230)]) link(onEvent4,7997757:doStrCat,[(392,188)(392,286)]) link(onEvent5,12895157:doShowTopic,[(416,195)(416,188)]) } Add(StrCat,14160486,404,224) { Str1="UPDATE $db_forums SET topics = topics + 1 WHERE forum_id = " link(onStrCat,14452377:doExec,[(444,230)(444,237)]) link(Str2,961060:Var3,[(417,135)]) } Add(GetDataEx,3542889,159,130) { link(Data,7065403:Result,[]) } Add(mysql_query,14452377,453,224) { } Add(StrCat,7997757,404,280) { Str1="UPDATE $db_topics SET first_post = last_post WHERE topic_id = " link(onStrCat,8479016:doExec,[(444,286)(444,293)]) } Add(mysql_query,8479016,453,280) { } Add(CallFunc,888842,201,98) { Args=1 Name="cvt_text" link(Arg1,7283929:Var2,[]) } Add(Trim,5342853,796,336) { link(onTrim,12587596:doBuild,[]) link(Value,10462585:Var,[(802,322)(739,322)(739,362)(704,362)]) } Add(StrCat,12489559,404,336) { Str1="SELECT type FROM $db_forums WHERE forum_id = " link(onStrCat,3162016:doQuery,[]) link(Str2,961060:Var2,[(417,329)(340,329)]) } Add(GetDataEx,961060,334,130) { Angle=3 link(Data,3542889:Var3,[]) } Add(mysql_query,3162016,453,336) { link(onQuery,1630735:doResult,[]) } Add(mysql_result,1630735,502,336) { Index=0 link(onResult,4220523:doCompare,[]) } Add(If_else,4220523,551,336) { Op2=Integer(2) link(onTrue,6675555:doStrCat,[]) } Add(GetTok,3048763,649,336) { Delimiter="," link(onTok,10462585:doValue,[]) } Add(StrCat,6675555,600,336) { Str2="," link(onStrCat,3048763:doFirstTok,[]) link(Str1,2077255:Result,[(606,324)(361,324)]) } Add(Vars,7115147,355,224) { Name="name" } Add(CallFunc,2077255,355,280) { Args=1 Name="cvt_text" link(Arg1,7115147:Post,[]) } Add(GlobalVar,10462585,698,336) { Name="tk" link(onValue,12641763:doWhile,[]) } Add(While,12641763,747,336) { link(onWhile,5342853:doTrim,[]) link(onStop,5010812:doBuild,[(787,349)(787,391)]) } Add(GetTok,1440393,1090,336) { Delimiter="," link(onTok,6147756:doValue,[]) } Add(GlobalVar,6147756,1139,336) { Name="tk" } Add(StringBuilder,2270156,992,336) { Mask="INSERT INTO $db_pms(topic_id, user_id) VALUES(%topic%, %user%)" Args=#17:Mask=Маска строки|5:topic|4:user| link(onBuild,7016370:doExec,[(1032,342)(1032,349)]) link(topic,14089915:Var3,[(1005,268)]) } Add(mysql_query,7016370,1041,336) { link(onQuery,1440393:doTok,[(1081,342)(1081,349)]) } Add(MultiElementEx,14046217,404,98) { @Hint=#10:Новый пост| elink(11838107) link(onRefresh,15535387:doValue,[]) } Add(StringBuilder,12587596,845,336) { Mask="SELECT user_id FROM $db_users WHERE name = '%name%'" Args=#17:Mask=Маска строки|4:name| link(onBuild,14335844:doQuery,[]) } Add(mysql_query,14335844,894,336) { link(onQuery,8607981:doResult,[]) } Add(mysql_result,8607981,943,336) { Index=0 link(onResult,2270156:doBuild,[]) } Add(Echo,13325546,789,175) { } Add(StringBuilder,4893843,404,385) { Mask="cset\tforum_id\tforum_serv.php?q=4&t=%id%\r\n" Args=#17:Mask=Маска строки|2:id| link(onBuild,15988887:doEcho,[]) } Add(Echo,15988887,453,385) { } Add(StringBuilder,5010812,796,385) { Mask="INSERT INTO $db_pms(topic_id, user_id) VALUES(%topic%, %user%)" Args=#17:Mask=Маска строки|5:topic|4:user| link(onBuild,4343382:doExec,[(836,391)(836,398)]) link(topic,14089915:Var2,[]) link(user,9559646:Var3,[(816,142)]) } Add(mysql_query,4343382,845,385) { } Add(GetDataEx,14089915,803,263) { Angle=3 link(Data,14816776:Value,[(305,268)]) } Add(GetDataEx,9559646,243,137) { link(Data,12615450:Get,[]) } Add(StringBuilder,9856406,740,175) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,13325546:doEcho,[]) } Add(MultiElementEx,12895157,453,182) { @Hint=#31:Просмотр топика=Просмотр топика| elink(633338) link(start,5755863:Value,[]) } Add(Memory,15535387,453,98) { } Add(Memory,5755863,453,140) { Default=Integer(0) } Add(If_else,11810396,103,161) { link(onTrue,12330085:doBuild,[]) } Add(GetDataEx,7283929,201,81) { link(Data,5565284:Post,[]) } Add(IsSet,887948,47,161) { link(onCheck,11810396:doCompare,[]) link(Var,7283929:Var1,[(53,86)]) } END_SDK Add(MultiElementEx,6604008,259,154) { @Hint=#36:Загрузка списка постов=Список постов| elink(2242679) link(topic,14787791:Var3,[(272,131)]) } Add(Case,16358396,350,49) { Value=Integer(6) link(onNextCase,2563268:doCase,[]) link(onTrue,3245544:doPrint,[(391,62)(391,104)]) AddHint(1,-26,21,13,Value) } Add(HTML_Collector,3245544,399,98) { link(onPrint,14390550:doEcho,[]) } BEGIN_SDK Add(HCEditor,13771392,21,21) { Width=916 Height=256 link(doPrint,14288816:doPrint,[(31,27)(31,76)]) } Add(VisualText,6176411,749,231) { Lines=#39:*.rar, *.zip, *.sha, *.jpg, *.png, *.7z| Width=179 Point(doPrint) } Add(HTM_Html,14288816,42,70) { link(onPrint,13575698:doEvent,[]) } Add(HTM_Body,12834360,154,119) { Style="padding: 10px; text-align: center; color: #333333;" link(onPrint,3458672:doPrint,[]) } Add(HTM_Form,3458672,210,119) { Action="forum_serv.php?q=7" Enctype="multipart/form-data" link(onPrint,11406558:doPrint,[]) } Add(HTM_File,13716846,553,119) { Style="width: 310px;" Name="file" } Add(HTM_Table,11406558,266,119) { Point(Style) link(onPrint,9823974:doEvent,[]) link(Style,14939848:Style,[(279,111)(272,111)]) } Add(Hub,13575698,98,70) { link(onEvent1,16336506:doPrint,[]) link(onEvent2,12834360:doPrint,[(142,83)(142,125)]) } Add(HTM_Style,1796478,210,70) { CSSFileName="xx/style.css" } Add(HTM_Head,16336506,154,70) { link(onPrint,1796478:doPrint,[]) } Add(HTM_Submit,13279622,490,224) { Value="Добавить" } Add(HTM_Span,5966560,763,168) { Style="font-weight: bold;" link(onPrint,16695072:doPrint,[]) link(onAfterPrint,10592193:doPrint,[(803,181)(803,202)]) } Add(Hub,9823974,322,119) { OutCount=3 link(onEvent1,5643221:doPrint,[]) link(onEvent2,4348143:doPrint,[(366,132)(366,174)]) link(onEvent3,7293386:doPrint,[(366,139)(366,230)]) } Add(HTM_Tr,5643221,378,119) { link(onPrint,8450643:doPrint,[]) } Add(HTM_Td,8450643,434,119) { Style="height: 20px; font-weight: bold;" link(onPrint,2717678:doPrint,[]) } Add(VisualText,2717678,490,119) { Lines=#6:Файл: | Width=46 Point(doPrint) Point(onPrint) link(onPrint,13716846:doPrint,[]) } Add(CSS,14939848,266,70) { FontSize="11px" BorderColor="gray" BorderWidth="1px" BorderStyle=3 BgColor="#eeeeee" } Add(HTM_Td,8933044,434,224) { Style="text-align: center; border-top: 1px dotted gray; height: 26px;" ColSpan=2 link(onPrint,13279622:doPrint,[]) } Add(VisualText,16695072,812,168) { Lines=#5:768Кб| Width=46 Point(doPrint) } Add(HTM_Span,4246615,700,231) { Style="font-weight: bold;" link(onPrint,6176411:doPrint,[]) } Add(Hub,14272044,490,168) { link(onEvent1,16480145:doPrint,[]) link(onEvent2,688493:doPrint,[(534,181)(534,237)]) } Add(VisualText,688493,546,231) { Lines=#21:Допустимые расширения| Width=137 Point(doPrint) Point(onPrint) link(onPrint,4246615:doPrint,[]) } Add(HTM_Br,10592193,812,196) { } Add(HTM_Tr,7293386,378,224) { link(onPrint,8933044:doPrint,[]) } Add(HTM_Tr,4348143,378,168) { link(onPrint,853156:doPrint,[]) } Add(HTM_Td,853156,434,168) { Style="border-top: 1px dotted gray; padding-left: 25px; padding-top: 10px; padding-bottom: 10px;" link(onPrint,14272044:doEvent,[]) } Add(VisualText,16480145,546,168) { Lines=#33:Paзмep фaйлa нe дoлжeн пpeвышaть | Width=200 Point(doPrint) Point(onPrint) link(onPrint,5966560:doPrint,[]) } END_SDK Add(Echo,14390550,448,98) { } Add(If_else,11742441,448,203) { Op2=Integer(0) link(onTrue,8820308:doWork3,[(508,209)]) link(Op1,10612791:Result,[]) } Add(Vars,11925724,511,154) { Name="a" Point(Get) } Add(StrInt,10612791,448,154) { link(Text,11925724:Get,[(454,142)(489,142)(489,198)(524,198)]) } Add(Memory,3486224,399,203) { link(onData,11742441:doCompare,[]) } Add(Case,201647,896,49) { Value=Integer(49) link(onNextCase,9793964:doCase,[]) link(onTrue,6479025:doRatingSet,[(936,62)(936,104)]) AddHint(1,-26,27,13,Value) } Add(MultiElementEx,6479025,952,98) { @Hint=#20:Управление рейтингом| link(post,6918264:Get,[]) link(score,16416561:Get,[]) link(Info,6957153:Result,[(972,86)(990,86)(990,135)(1000,135)]) } BEGIN_SDK Add(EditMultiEx,8176465,21,21) { WorkCount=#11:doRatingSet| DataCount=#4:post|5:score|4:Info| Width=1042 Height=263 link(doRatingSet,14947464:doWork1,[(31,27)(31,139)]) } Add(MultiElement,14947464,42,133) { link(onEvent1,12278824:doCompare,[]) link(Data1,103292:Var2,[]) } BEGIN_SDK Add(EditMulti,14959305,10,10) { EventCount=1 WorkCount=1 DataCount=1 Width=237 Height=165 link(doWork1,5169540:doCompare,[(26,16)(26,132)]) } Add(If_else,5169540,42,126) { Type=2 Op2=Integer(0) link(onTrue,13901629:doWork2,[(135,132)(135,139)]) link(onFalse,13901629:doWork1,[(135,139)(135,132)]) link(Op1,14959305:Data1,[(48,68)(16,68)]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(238,132)(238,16)]) } END_SDK Add(If_else,12278824,91,133) { link(onTrue,14310539:doCompare,[]) link(onFalse,15973546:doEcho,[(131,146)(131,188)]) } Add(Echo,15973546,140,182) { Message="mes\tГолосование доступно только для зарегистрированных пользователей\r\n" } Add(StringBuilder,8940952,294,133) { Mask="SELECT COUNT(*) FROM hiasm_prating WHERE user_id = %user% AND post_id = %post%" Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,14092639:doQuery,[]) link(user,6899905:Var2,[]) link(post,14350887:Var2,[]) } Add(GlobalVar,3515128,42,42) { Name="udata" } Add(ArrayItem,1699901,42,77) { Name="user_id" link(Array,8699644:Var2,[]) } Add(mysql_query,14092639,343,133) { link(onQuery,11364979:doResult,[]) } Add(mysql_result,11364979,392,133) { Index=0 link(onResult,5813950:doCompare,[]) } Add(If_else,5813950,441,133) { Op2=Integer(0) link(onTrue,10026314:doStrCat,[]) link(onFalse,4703913:doEcho,[(481,146)(481,188)]) } Add(Echo,4703913,490,182) { Message="mes\tВы уже проголосовали за это сообщение\r\n" } Add(StringBuilder,508548,539,182) { Mask="INSERT INTO hiasm_prating(user_id, post_id, score, `time`, info) VALUES(%user%, %post%, %score%, UNIX_TIMESTAMP(), '%inf%')" Args=#17:Mask=Маска строки|4:user|4:post|5:score|3:inf| link(onBuild,2235165:doExec,[(586,188)(586,195)]) link(user,15785996:Var2,[]) link(post,16203908:Var2,[]) link(score,5101513:Result,[(566,174)(895,174)]) link(inf,756261:Var3,[(573,51)]) } Add(mysql_query,2235165,595,182) { } Add(GetDataEx,6899905,301,116) { Angle=3 link(Data,103292:Var3,[]) } Add(GetDataEx,14350887,308,32) { Angle=3 link(Data,8176465:post,[(27,37)]) } Add(GetDataEx,103292,42,116) { link(Data,1699901:Get,[]) } Add(mysql_query,513095,1001,133) { } Add(If_else,11816596,735,133) { Type=5 Op2=Integer(-1) link(onTrue,7612600:doCompare,[]) link(onFalse,7446930:doEcho,[(779,146)(779,188)]) } Add(StrCat,10026314,588,133) { Str1="SELECT user FROM hiasm_posts WHERE post_id = " link(onStrCat,842183:doQuery,[]) link(Str2,16203908:Var3,[(601,37)]) } Add(mysql_query,842183,637,133) { link(onQuery,9383435:doResult,[]) } Add(mysql_result,9383435,686,133) { Index=0 link(onResult,11816596:doCompare,[]) } Add(GetDataEx,16203908,553,32) { Angle=3 link(Data,14350887:Var3,[]) } Add(If_else,7612600,791,133) { Type=5 link(onTrue,641975:doEvent,[]) link(onFalse,699475:doEcho,[(835,146)(835,188)]) link(Op2,15785996:Var3,[(804,121)]) } Add(GetDataEx,15785996,546,116) { Angle=3 link(Data,6899905:Var3,[]) } Add(Hub,641975,847,133) { link(onEvent1,5101513:doCalc,[]) link(onEvent2,508548:doBuild,[(873,146)(873,167)(527,167)(527,188)]) } Add(ArrayItem,1406326,882,77) { Name="rank" link(Array,12051004:Var3,[(888,65)]) } Add(GetDataEx,8699644,42,60) { link(Data,3515128:Var,[]) } Add(If_else,14310539,140,133) { Type=2 Op2=Integer(2) link(onTrue,4157808:doCompare,[]) link(onFalse,6056697:doEcho,[(184,146)(184,188)]) link(Op1,1975902:Get,[]) } Add(ArrayItem,1975902,140,77) { Name="posts" link(Array,4398738:Var2,[]) } Add(GetDataEx,4398738,140,60) { Angle=3 link(Data,8699644:Var3,[]) } Add(Echo,6056697,196,182) { Message="mes\tДля участия в голосовании нужно оставить некоторое количество сообщений" } Add(Echo,7446930,791,182) { Message="mes\tВы не можите голосовать за сообщение от гостя\r\n" } Add(Echo,699475,847,182) { Message="mes\tНельзя голосовать за свое собственное сообщение\r\n" } Add(Echo,15352962,245,182) { Message="mes\tДля участия в голосовании нужно иметь положительный рейтинг\r\n" } Add(If_else,4157808,196,133) { Type=2 Op2=Integer(-1) link(onTrue,7613850:doCompare,[]) link(onFalse,15352962:doEcho,[(236,146)(236,188)]) link(Op1,11494956:Get,[]) } Add(ArrayItem,11494956,196,77) { Name="rating" link(Array,12051004:Var2,[]) } Add(GetDataEx,12051004,196,60) { Angle=3 link(Data,4398738:Var3,[]) } Add(If_else,7613850,245,133) { Type=2 Op2=Integer(4) link(onTrue,8940952:doBuild,[]) link(onFalse,7724457:doEcho,[(285,146)(285,188)]) link(Op1,5084190:Result,[]) } Add(Length,5084190,245,77) { link(Text,756261:Var2,[]) } Add(Echo,7724457,294,182) { Message="mes\tСлишком короткое пояснение\r\n" } Add(GetDataEx,756261,245,46) { Angle=3 link(Data,8176465:Info,[(41,51)]) } Add(MathParse,5101513,889,133) { MathStr="(%2*2 - 1)*(1 + %1)" link(onResult,12758001:doBuild,[]) link(X1,1406326:Get,[(895,121)(888,121)]) link(X2,8176465:score,[(902,32)(34,32)]) } Add(StringBuilder,12758001,945,133) { Mask="UPDATE hiasm_users SET rating = rating + %r% WHERE user_id = %id% " Args=#17:Mask=Маска строки|2:id|1:r| link(onBuild,513095:doExec,[(989,139)(989,146)]) link(id,9383435:Result,[(958,121)(935,121)(935,219)(692,219)]) } END_SDK Add(Vars,6918264,945,49) { Name="p" Point(Get) } Add(Vars,16416561,952,42) { Name="a" Point(Get) } Add(Case,9793964,1036,49) { Value=Integer(66) link(onNextCase,5836599:doCase,[]) link(onTrue,16006938:doRefreshFiles,[(1076,62)(1076,104)]) AddHint(0,-26,27,13,Value) } Add(MultiElementEx,16006938,1085,98) { @Hint=#16:Вывод избранного| link(name,3403172:Get,[]) link(pass,16004762:Get,[(1098,90)(1140,90)]) } BEGIN_SDK Add(EditMultiEx,7436789,21,21) { WorkCount=#14:doRefreshFiles| DataCount=#4:name|4:pass| Width=482 Height=221 link(doRefreshFiles,518251:doInline,[(35,27)(35,139)]) } Add(mysql_query,1114181,147,133) { link(onQuery,6223482:doNumRows,[]) } Add(mysql_num_rows,6223482,196,133) { link(onNumRows,8991368:doFor,[]) } Add(For,8991368,245,133) { link(onEvent,15241184:doFetchRow,[]) } Add(mysql_fetch_row,15241184,294,133) { link(onFetchRow,5835650:doBuild,[]) link(Query,1114181:Result,[(300,121)(236,121)(236,175)(153,175)]) } Add(Echo,7383037,392,133) { } Add(StringBuilder,5835650,343,133) { Mask="%size%=%file%\r\n" Args=#17:Mask=Маска строки|4:size|4:file|2:id| link(onBuild,7383037:doEcho,[]) link(size,15229922:Item,[(356,117)(349,117)]) link(file,15651641:Item,[(363,117)(398,117)]) } Add(ArrayRead,15229922,343,70) { Index=0 link(Array,16537383:Var2,[]) } Add(ArrayRead,15651641,392,70) { Index=1 link(Array,16537383:Var3,[(398,58)]) } Add(GetDataEx,16537383,343,53) { Angle=3 link(Data,15241184:Result,[(322,58)(322,177)(300,177)]) } Add(Inline,518251,49,133) { InlineCode=#39:global $db_topics, $db_users, $db_fvrt;| link(onInline,5863284:doBuild,[]) } Add(StringBuilder,5863284,98,133) { Mask="SELECT t.title, t.posts FROM $db_topics t, $db_fvrt f, $db_users u WHERE u.user_id = f.user_id AND f.topic_id = t.topic_id AND u.name = '%name%' AND u.pass = MD5('%pass%')" Args=#17:Mask=Маска строки|4:name|4:pass| link(onBuild,1114181:doQuery,[]) link(name,7436789:name,[(111,77)(27,77)]) link(pass,7436789:pass,[(118,77)(34,77)]) } END_SDK Add(Vars,3403172,1078,49) { Name="login" Point(Get) } Add(Case,7734503,1260,49) { Value=Integer(57) link(onNextCase,3281321:doCase,[]) link(onTrue,13184873:doChangeText,[(1300,62)(1300,181)]) AddHint(0,-26,27,13,Value) } Add(MultiElementEx,13184873,1316,175) { @Hint=#18:Исправление текста| link(post,16181337:Post,[]) link(source,4052969:Post,[(1329,153)(1364,153)]) link(Dest,1345265:Post,[(1336,153)(1406,153)]) } BEGIN_SDK Add(EditMultiEx,13690919,21,21) { WorkCount=#12:doChangeText| DataCount=#4:post|6:source|4:Dest| Width=622 Height=193 link(doChangeText,13158426:doCheckPerm,[(31,27)(31,132)]) } Add(StrCat,10081992,140,126) { Str1="DELETE FROM hiasm_word_post WHERE post_id = " link(onStrCat,12040966:doExec,[(184,132)(184,139)]) link(Str2,3403080:Var2,[]) } Add(mysql_query,12040966,196,126) { link(onQuery,12171450:doStrCat,[]) } Add(StrCat,12171450,252,126) { Str1="SELECT text FROM hiasm_posts_text WHERE post = " link(onStrCat,8390220:doQuery,[]) link(Str2,4197926:Var2,[]) } Add(mysql_query,8390220,308,126) { link(onQuery,4574220:doResult,[]) } Add(GetDataEx,3403080,147,95) { Angle=3 link(Data,15033792:Var3,[]) } Add(Replace,1830889,420,126) { link(onReplace,1264533:doBuild,[]) link(SubStr,12232290:Result,[(433,110)(398,110)]) link(DestStr,888842:Result,[]) } Add(StringBuilder,1264533,476,126) { Mask="UPDATE hiasm_posts_text SET text = '%text%' WHERE post = %post%" Args=#17:Mask=Маска строки|4:text|4:post| link(onBuild,11579010:doExec,[(520,132)(520,139)]) link(post,10992886:Var2,[]) } Add(mysql_query,11579010,532,126) { link(onQuery,5270105:doPrint,[]) } Add(CallFunc,5270105,588,126) { Args=2 Name="post_indexer" link(Arg1,1830889:Result,[(594,113)(579,113)(579,167)(426,167)]) link(Arg2,10992886:Var3,[(601,100)]) } Add(GetDataEx,4197926,259,95) { Angle=3 link(Data,3403080:Var3,[]) } Add(GetDataEx,10992886,490,95) { Angle=3 link(Data,4197926:Var3,[]) } Add(CallFunc,888842,434,63) { Args=1 Name="cvt_text" IgnoreResult=1 link(Arg1,13690919:Dest,[(440,42)(41,42)]) } Add(MultiElementEx,13158426,42,126) { @Hint=#6:Access| elink(2105528) link(onCheckPerm,1447572:doCompare,[]) link(Post,15033792:Var2,[]) } Add(GetDataEx,15033792,42,95) { Angle=3 link(Data,13690919:post,[(27,100)]) } Add(If_else,1447572,91,126) { link(onTrue,10081992:doStrCat,[]) link(onFalse,15973546:doEcho,[(131,139)(131,174)]) } Add(Echo,15973546,140,168) { Message="mes\tОтказано в доступе\r\n" } Add(mysql_result,4574220,364,126) { Index=0 link(onResult,1830889:doReplace,[]) } Add(CallFunc,12232290,392,63) { Args=1 Name="cvt_text" IgnoreResult=1 link(Arg1,13690919:source,[(398,42)(34,42)]) } END_SDK Add(Vars,16181337,1316,98) { Name="p" } Add(Vars,4052969,1358,98) { Name="s" } Add(Vars,1345265,1400,98) { Name="d" } Add(Vars,1350496,994,42) { Name="inf" Point(Get) } Add(CallFunc,6957153,994,91) { Args=1 Name="cvt_text" IgnoreResult=1 link(Arg1,1350496:Get,[(1000,83)(1007,83)]) } Add(Echo,9831815,1505,154) { Message="set\ttext\tf_rating_body\r\n" } Add(Hub,8316196,1456,154) { link(onEvent1,9831815:doEcho,[]) link(onEvent2,10608559:doWork2,[(1499,167)(1499,209)]) } Add(MultiElementEx,9856528,1547,203) { @Hint=#12:Показ оценок| link(Start,12233453:Result,[]) link(User,8693370:Result,[(1560,195)(1595,195)]) link(Author,5917849:Result,[(1567,195)(1637,195)]) } BEGIN_SDK Add(EditMultiEx,7040546,21,21) { WorkCount=#12:doViewRating| DataCount=#5:Start|4:User|6:Author| Width=951 Height=221 VOffset=84 link(doViewRating,5607339:doEvent,[]) } Add(StringBuilder,5013948,231,112) { Mask="SELECT u2.name as user, u1.name as author, r.info, r.time, r.score, pt.text, r.post_id, u2.user_id, u1.user_id as author_id FROM hiasm_prating r, hiasm_users u1, hiasm_posts p, hiasm_users u2, hiasm_posts_text pt WHERE r.user_id = u1.user_id AND r.post_id = p.post_id AND p.user = u2.user_id AND pt.post = r.post_id %flt_user% %flt_author% ORDER BY r.vote_id DESC LIMIT %start%, 20" Args=#17:Mask=Маска строки|5:start|8:flt_user|10:flt_author| link(onBuild,10746269:doQuery,[]) link(start,10894510:Var1,[(244,93)]) link(flt_user,8523379:Var3,[(251,100)]) link(flt_author,4309847:Var3,[(258,107)]) } Add(Hub,5607339,49,105) { OutCount=3 link(onEvent1,10475057:doFilter,[(85,111)(85,62)]) link(onEvent2,13113281:doEcho,[]) link(onEvent3,11783267:doBuild,[(84,125)(84,181)]) } Add(Echo,13113281,154,112) { Message="fadd\t\tf_rating_begin\r\n" link(onEcho,5013948:doBuild,[]) } Add(mysql_query,10763079,154,175) { link(onQuery,12651989:doResult,[]) } Add(mysql_query,10746269,280,112) { link(onQuery,9890175:doNumRows,[]) } Add(mysql_fetch_array,853873,427,112) { link(onFetchArray,6379432:doEvent,[(471,118)(471,62)]) link(Query,10746269:Result,[(433,104)(369,104)(369,151)(286,151)]) } Add(StringBuilder,12743305,623,112) { Mask="fadd\t\tf_rating_file\t%user%\t%author%\t%info%\t%time%\t%score%\t%text%\t%post%\t%user_id%\t%author_id%\r\n" Args=#17:Mask=Маска строки|4:user|6:author|4:info|4:time|5:score|4:text|4:post|7:user_id|9:author_id| link(onBuild,4128431:doEcho,[]) link(user,12238891:Get,[]) link(author,13801235:Get,[(643,100)(685,100)]) link(info,3135354:VoteText,[(650,100)(531,100)]) link(score,14122988:Get,[(664,100)(783,100)]) link(text,3135354:PostText,[(671,100)(524,100)]) link(post,13660942:Get,[(678,100)(832,100)]) link(user_id,2422650:Get,[(685,100)(881,100)]) link(author_id,14958468:Get,[(692,100)(930,100)]) } Add(Echo,8529584,427,175) { Message="fadd\t\tf_rating_end\r\nflush\tf_a_body\r\n" } Add(mysql_num_rows,9890175,329,112) { link(onNumRows,429423:doFor,[]) } Add(For,429423,378,112) { link(onEvent,853873:doFetchArray,[]) link(onStop,8529584:doEcho,[(418,125)(418,181)]) } Add(ArrayItem,12238891,630,56) { Name="user" link(Array,11911215:Var2,[]) } Add(ArrayItem,2977540,525,112) { Name="time" link(onGet,8467702:doFormat,[]) } Add(FormatTime,8467702,574,112) { Mask="%d %b %Y %H:%M" link(onFormat,12743305:doBuild,[]) } Add(Echo,4128431,721,112) { } Add(ArrayItem,13801235,679,56) { Name="author" link(Array,12497438:Var2,[]) } Add(GetDataEx,11911215,630,39) { Angle=3 link(Data,853873:Result,[(600,44)(600,156)(433,156)]) } Add(GetDataEx,12497438,679,39) { Angle=3 link(Data,11911215:Var3,[]) } Add(ArrayItem,14122988,777,56) { Name="score" link(Array,3607693:Var2,[]) } Add(GetDataEx,10894510,266,88) { link(Data,7040546:Start,[(272,30)(27,30)]) } Add(StringBuilder,2780796,252,175) { Mask="call\tmake_pages\tforum_serv.php?q=60&u=%u%&a=%a%\t%start%\t%count%\t20\r\n" Args=#17:Mask=Маска строки|5:count|5:start|1:u|1:a| link(onBuild,1342417:doEcho,[]) link(start,10894510:Var2,[]) link(u,9232434:Var2,[(279,164)(132,164)]) link(a,16766791:Var2,[(286,155)(139,155)]) } Add(InfoTip,1641633,96,161) { Info=#5:Pages| HAlign=2 Width=307 Height=53 Margin=2 } Add(Echo,6069297,357,175) { Message="\r\nflush\tpages\r\n" } Add(Echo,1342417,308,175) { link(onEcho,6069297:doEcho,[]) } Add(mysql_result,12651989,203,175) { Index=0 link(onResult,2780796:doBuild,[]) } Add(GetDataEx,4309847,203,102) { link(Data,14338399:Filter,[]) } Add(GetDataEx,3607693,777,39) { Angle=3 link(Data,12497438:Var3,[]) } Add(MultiElementEx,3135354,518,56) { @Hint=#21:Подготовка параметров| CodeType=1 } BEGIN_SDK Add(EditMultiEx,2564702,21,21) { WorkCount=#5:doGet| VarCount=#8:PostText|8:VoteText| link(doGet,15456852:doEvent,[(35,27)(35,62)]) link(PostText,1464374:Result,[(27,151)(216,151)]) link(VoteText,14666994:Result,[(34,175)(132,175)]) } Add(Replace,134151,126,56) { SubStr="\r\n" DestStr="\n" link(onReplace,4088521:doReplace,[]) } Add(Replace,4088521,168,56) { SubStr="\t" DestStr="[tab]" link(onReplace,1464374:doReplace,[]) } Add(Replace,1464374,210,56) { SubStr="<" DestStr="<" } Add(ArrayItem,8154713,84,56) { Name="text" link(onGet,134151:doReplace,[]) } Add(Hub,15456852,49,56) { link(onEvent1,8154713:doGet,[]) link(onEvent2,3027502:doGet,[(73,69)(73,104)]) } Add(ArrayItem,3027502,84,98) { Name="info" link(onGet,14666994:doReplace,[]) } Add(Replace,14666994,126,98) { SubStr="<" DestStr="<" } END_SDK Add(Hub,6379432,483,56) { link(onEvent1,3135354:doGet,[]) link(onEvent2,2977540:doGet,[(511,69)(511,118)]) } Add(ArrayItem,13660942,826,56) { Name="post_id" link(Array,2025659:Var2,[]) } Add(MultiElementEx,10475057,154,56) { @Hint=#15:Фильтр по юзеру| CodeType=1 link(onFilter,14338399:doFilter,[]) link(User,9232434:Var3,[(160,44)]) } BEGIN_SDK Add(EditMultiEx,4040889,21,21) { WorkCount=#8:doFilter| EventCount=#8:onFilter| VarCount=#6:Filter| DataCount=#4:User| Width=223 Height=95 link(doFilter,6638685:doEvent,[(31,27)(31,55)]) link(Filter,4929619:Value,[(27,98)(195,98)]) } Add(If_else,8419194,91,49) { link(onTrue,5265941:doStrCat,[]) link(Op1,10765223:Var2,[]) } Add(Memory,4929619,189,49) { Default=String() } Add(Hub,6638685,42,49) { link(onEvent1,8419194:doCompare,[]) link(onEvent2,4040889:onFilter,[(77,62)(77,27)]) } Add(StrCat,5265941,140,49) { Str1=" and p.user = " link(onStrCat,4929619:doValue,[]) link(Str2,10765223:Var3,[(153,37)]) } Add(GetDataEx,10765223,91,32) { Angle=3 link(Data,4040889:User,[(27,37)]) } END_SDK Add(MultiElementEx,14338399,203,56) { @Hint=#16:Фильтр по автору| CodeType=1 link(User,16766791:Var3,[(209,37)]) } BEGIN_SDK Add(EditMultiEx,4040889,21,21) { WorkCount=#8:doFilter| EventCount=#8:onFilter| VarCount=#6:Filter| DataCount=#4:User| Width=223 Height=95 link(doFilter,6638685:doEvent,[(31,27)(31,55)]) link(Filter,4929619:Value,[(27,98)(195,98)]) } Add(If_else,8419194,91,49) { link(onTrue,5265941:doStrCat,[]) link(Op1,2941171:Var2,[]) } Add(Memory,4929619,189,49) { Default=String() } Add(Hub,6638685,42,49) { link(onEvent1,8419194:doCompare,[]) link(onEvent2,4040889:onFilter,[(77,62)(77,27)]) } Add(StrCat,5265941,140,49) { Str1=" and r.user_id = " link(onStrCat,4929619:doValue,[]) link(Str2,2941171:Var3,[(153,37)]) } Add(GetDataEx,2941171,91,32) { Angle=3 link(Data,4040889:User,[(27,37)]) } END_SDK Add(ArrayItem,2422650,875,56) { Name="user_id" link(Array,6392800:Var2,[]) } Add(ArrayItem,14958468,924,56) { Name="author_id" link(Array,6392800:Var3,[(930,44)]) } Add(GetDataEx,2025659,826,39) { Angle=3 link(Data,3607693:Var3,[]) } Add(GetDataEx,6392800,875,39) { Angle=3 link(Data,2025659:Var3,[]) } Add(GetDataEx,9232434,126,39) { Angle=3 link(Data,7040546:User,[(34,44)]) } Add(GetDataEx,16766791,133,32) { Angle=3 link(Data,7040546:Author,[(41,37)]) } Add(StringBuilder,11783267,105,175) { Mask="SELECT count(*) FROM hiasm_prating r, hiasm_posts p WHERE r.post_id = p.post_id %flt_user% %flt_author%" Args=#17:Mask=Маска строки|8:flt_user|10:flt_author| link(onBuild,10763079:doQuery,[]) link(flt_user,8523379:Var1,[(118,100)]) link(flt_author,4309847:Var1,[(125,107)]) } Add(GetDataEx,8523379,154,95) { link(Data,10475057:Filter,[]) } END_SDK Add(Vars,14964123,1540,105) { Name="s" Point(Get) } Add(StrInt,12233453,1547,154) { link(Text,14964123:Get,[]) } Add(HubEx,10608559,1519,203) { link(onEvent,9856528:doViewRating,[]) } Add(Case,3281321,1400,49) { Value=Integer(59) link(onNextCase,1097574:doCase,[]) link(onTrue,8316196:doEvent,[(1447,62)(1447,160)]) AddHint(0,-26,27,13,Value) } Add(Case,1097574,1449,49) { Value=Integer(60) link(onNextCase,13314459:doCase,[]) link(onTrue,10608559:doWork1,[(1523,62)]) AddHint(0,-26,27,13,Value) } Add(Vars,10520779,1582,105) { Name="u" Point(Get) } Add(StrInt,8693370,1589,154) { link(Text,10520779:Get,[]) } Add(Vars,12795238,1624,105) { Name="a" Point(Get) } Add(StrInt,5917849,1631,154) { link(Text,12795238:Get,[]) } Add(Case,13314459,1631,49) { Value=Integer(62) link(onNextCase,3896338:onEvent1,[(1709,55)(1709,20)]) link(onTrue,3451167:doEditPost,[(1671,62)(1671,104)]) AddHint(-4,-26,27,13,Value) } Add(MultiElementEx,3451167,1680,98) { @Hint=#17:Замечание к посту| CodeType=1 link(onRefresh,8114354:doWork2,[(1724,104)(1724,146)]) } BEGIN_SDK Add(EditMultiEx,3854639,21,21) { WorkCount=#10:doEditPost| EventCount=#9:onRefresh| Width=1007 Height=228 link(doEditPost,7677112:doWork1,[(45,27)(45,146)]) } Add(Vars,9321514,238,42) { Name="p" Point(Get) } Add(StringBuilder,12803116,175,140) { Mask="INSERT INTO hiasm_topic_mod(user, post, text, time) VALUES(%user%, %post%, '%text%', UNIX_TIMESTAMP()) " Args=#17:Mask=Маска строки|4:user|4:post|4:text| link(onBuild,10823365:doExec,[(226,146)(226,160)]) link(user,6489230:Var2,[]) link(post,2335934:Var2,[(195,126)(251,126)]) link(text,7717232:Result,[(202,135)(328,135)]) } Add(GlobalVar,3515128,182,35) { Name="udata" } Add(ArrayItem,10675040,182,77) { Name="user_id" link(Array,3515128:Var,[]) } Add(Vars,15604562,322,35) { Name="text" } Add(CallFunc,7717232,322,98) { Args=1 Name="cvt_text" link(Arg1,15604562:Post,[]) } Add(mysql_query,10823365,238,147) { link(onQuery,10894769:doBuild,[]) } Add(GetDataEx,14335252,245,77) { link(Data,9321514:Get,[]) } Add(StrCat,15100908,441,147) { Str1="SELECT topic FROM hiasm_posts WHERE post_id = " link(onStrCat,3414965:doQuery,[]) link(Str2,6518615:Var2,[]) } Add(mysql_query,3414965,490,147) { link(onQuery,7144326:doResult,[]) } Add(mysql_result,7144326,539,147) { Index=0 link(onResult,8746770:doValue,[]) } Add(GlobalVar,8746770,588,147) { Name="_GET['t']" link(onValue,350006:doEvent,[]) } Add(StringBuilder,8375893,693,147) { Mask="SELECT COUNT(*) FROM hiasm_posts WHERE topic = %topic% AND post_id <= %post%" Args=#17:Mask=Маска строки|5:topic|4:post| link(onBuild,7621526:doQuery,[]) link(post,6518615:Var3,[(713,82)]) } Add(GetDataEx,6518615,448,77) { Angle=3 link(Data,14335252:Var3,[]) } Add(mysql_query,7621526,742,147) { link(onQuery,3663060:doResult,[]) } Add(mysql_result,3663060,791,147) { Index=0 link(onResult,15470676:doCalc,[]) } Add(MathParse,15470676,840,147) { DataCount=1 MathStr="(%1 - 1)/15" link(onResult,14861444:doStrInt,[]) } Add(StrInt,14861444,889,147) { link(onStrInt,16751973:doOperation,[]) } Add(Math,16751973,938,147) { OpType=2 Op2=15 link(onResult,3854639:onRefresh,[(875,153)(875,27)]) } Add(Echo,2747422,392,147) { Message="cset\tmessage\t\r\ncset\tuser_id\t0\r\nset\tinfo\tself_data\t\r\n" link(onEcho,15100908:doStrCat,[]) } Add(Echo,15973546,175,189) { Message="mes\tОтказано в доступе\r\n" } Add(If_else,15124779,119,140) { link(onTrue,12803116:doBuild,[]) link(onFalse,15973546:doEcho,[(161,153)(161,195)]) } Add(MultiElement,7677112,70,140) { link(onEvent1,15124779:doCompare,[]) } BEGIN_SDK Add(EditMulti,14959305,10,17) { EventCount=1 WorkCount=1 Width=251 Height=186 link(doWork1,5169540:doCompare,[(26,23)(26,132)]) } Add(If_else,5169540,42,126) { Op2=Integer(1) link(onTrue,16172446:doWork1,[(135,132)]) link(onFalse,4433799:doCompare,[]) link(Op1,1699901:Get,[]) } Add(GlobalVar,3515128,42,35) { Name="udata" } Add(ArrayItem,1699901,42,70) { Name="level" link(Array,15883751:Var2,[]) } Add(ChanelToIndex,13901629,196,126) { link(onIndex,14959305:onEvent1,[(238,132)(238,23)]) } Add(If_else,4433799,91,133) { Type=2 Op2=Integer(1) link(onTrue,16172446:doWork2,[]) link(onFalse,13901629:doWork1,[(159,146)(159,132)]) link(Op1,7612457:Get,[]) } Add(ArrayItem,7612457,91,70) { Name="rank" link(Array,15883751:Var3,[(97,58)]) } Add(GetDataEx,15883751,42,53) { link(Data,3515128:Var,[]) } Add(HubEx,16172446,131,133) { link(onEvent,13901629:doWork2,[]) } END_SDK Add(StringBuilder,7959047,693,196) { Mask="cset\tforum_id\tforum_serv.php?q=4&t=%topic%\r\n" Args=#17:Mask=Маска строки|5:topic| link(onBuild,15572454:doEcho,[]) } Add(Hub,350006,665,147) { link(onEvent1,8375893:doBuild,[]) link(onEvent2,7959047:doBuild,[(686,160)(686,202)]) } Add(Echo,15572454,742,196) { } Add(StringBuilder,10894769,280,147) { Mask="UPDATE $db_posts SET edituid=%user%,time=UNIX_TIMESTAMP() WHERE post_id=%post% LIMIT 0,1 " Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,8760337:doExec,[(320,153)(320,160)]) link(user,6489230:Var3,[(293,117)]) link(post,2335934:Var3,[(300,96)]) } Add(mysql_query,8760337,329,147) { link(onQuery,2747422:doEcho,[]) } Add(GetDataEx,6489230,182,112) { link(Data,10675040:Get,[]) } Add(GetDataEx,2335934,245,91) { link(Data,14335252:Var2,[]) } END_SDK Add(HubEx,8114354,778,140) { Angle=2 link(onEvent,8820308:doWork2,[]) } END_SDK Add(Hub,2779989,119,105) { link(onEvent1,1174752:doWork1,[]) link(onEvent2,9758758:doData,[(164,118)(164,167)]) } Add(MultiElement,1174752,168,105) { @Hint=#11:Общие ф-ции| CodeType=1 } BEGIN_SDK Add(EditMulti,5585708,24,24) { WorkCount=1 Width=1042 Height=368 link(doWork1,6260506:doEvent,[(45,30)(45,97)]) } Add(GetDataEx,7399775,294,256) { Angle=1 link(Data,16526858:Var1,[]) } Add(VisualText,12177005,259,315) { Lines=#27:#\[scode\](.*?)\[/code\]#is| Width=144 Point(Text) } Add(Function,3056123,119,91) { @Hint=#13:remove_attach| Args=1 Name="remove_attach" link(onPrint,518251:doInline,[]) AddHint(-117,-43,95,14,Name) } Add(mysql_num_rows,5471308,315,91) { link(onNumRows,16474799:doCompare,[]) } Add(If_else,16474799,364,91) { link(onTrue,12364388:doEvent,[]) } Add(StrCat,2615725,217,91) { Str1="SELECT file, size FROM $db_attach WHERE type = 0 AND attach_id = " link(onStrCat,4211949:doQuery,[]) link(Str2,11505635:Var1,[(230,79)(209,79)]) } Add(mysql_query,4211949,266,91) { link(onQuery,5471308:doNumRows,[]) } Add(StringBuilder,4331389,616,91) { Mask="xf/attach/tmp/%file%" Args=#17:Mask=Маска строки|4:file| link(onBuild,3341163:doDelete,[(656,97)(656,111)]) } Add(FileTools,3341163,665,91) { } Add(mysql_fetch_row,12453354,462,91) { link(onFetchRow,8290150:doEvent,[]) link(Query,4211949:Result,[(468,79)(354,79)(354,129)(272,129)]) } Add(ArrayRead,5105778,567,91) { Index=0 link(onRead,4331389:doBuild,[]) } Add(GetDataEx,11505635,203,130) { Angle=3 link(Data,3056123:Arg1,[(125,135)]) } Add(Inline,518251,168,91) { InlineCode=#30:global $db_attach, $db_upload;| link(onInline,2615725:doStrCat,[]) } Add(Hub,6260506,70,91) { OutCount=4 link(onEvent1,3056123:doPrint,[]) link(onEvent2,4245689:doPrint,[(110,104)(110,202)]) link(onEvent3,2185529:doPrint,[(110,111)(110,272)]) link(onEvent4,4267369:doPrint,[(110,118)(110,328)]) } Add(Function,4245689,119,196) { @Hint=#7:ss_info| Args=1 Name="ss_info" link(onPrint,4160144:doInline,[]) AddHint(-110,-36,54,14,Name) } Add(StringBuilder,1740326,217,196) { Mask="UPDATE $db_sessions SET info = '%info%' WHERE session_id = '%sid%'" Args=#17:Mask=Маска строки|4:info|3:sid| link(onBuild,6488908:doExec,[(257,202)(257,209)]) link(info,4245689:Arg1,[(230,184)(159,184)(159,240)(125,240)]) link(sid,10788360:Id,[(237,178)(223,178)]) } Add(Session,10788360,217,140) { } Add(Inline,4160144,168,196) { InlineCode=#20:global $db_sessions;| link(onInline,1740326:doBuild,[]) } Add(mysql_query,6488908,266,196) { } Add(Function,2185529,119,266) { @Hint=#13:#post_indexer| Args=2 Name="post_indexer" AddHint(-113,-26,86,14,Name) } Add(Inline,9822578,168,266) { InlineCode=#47:global $db_posts, $db_word_list, $db_word_post;| link(onInline,12167633:doReplace,[]) } Add(ArraySplit,8945762,427,266) { Delimiter="[0-9 -/:-@[-^{-~\t\r\n]" link(onSplit,11720073:doEnum,[]) } Add(If_else,3267048,525,266) { Type=5 Op2=String() link(onTrue,1128708:doCompare,[]) } Add(StringBuilder,13214052,672,266) { Mask="SELECT word_id FROM $db_word_list WHERE word = '%word%'" Args=#17:Mask=Маска строки|4:word| link(onBuild,6786758:doQuery,[]) } Add(mysql_query,6786758,721,266) { link(onQuery,14048119:doNumRows,[]) } Add(Memory,5407959,917,266) { Extern=1 } Add(If_else,11081128,819,266) { link(onTrue,1421847:doResult,[]) link(onFalse,2567884:doBuild,[(859,279)(859,328)]) } Add(mysql_num_rows,14048119,770,266) { link(onNumRows,11081128:doCompare,[]) } Add(mysql_result,1421847,868,266) { Index=0 link(onResult,11569369:doWork2,[]) link(Query,6786758:Result,[(874,254)(808,254)(808,303)(727,303)]) } Add(StringBuilder,2567884,868,322) { Mask="INSERT INTO $db_word_list(`word`) VALUES('%word%')" Args=#17:Mask=Маска строки|4:word| link(onBuild,4122683:doExec,[(908,328)(908,335)]) link(word,11422504:Var3,[(881,305)]) } Add(mysql_query,4122683,917,322) { Point(LastInsertId) link(onQuery,3113777:doData,[]) } Add(HubEx,11569369,903,266) { link(onEvent,5407959:doValue,[]) } Add(DoData,3113777,966,322) { link(onEventData,11569369:doWork3,[(1011,328)(1011,306)(907,306)]) link(Data,4122683:LastInsertId,[(972,310)(958,310)(958,362)(930,362)]) } Add(Hub,2861887,623,266) { link(onEvent1,13214052:doBuild,[]) link(onEvent2,8001835:doBuild,[(663,279)(663,328)]) } Add(StringBuilder,8001835,672,322) { Mask="INSERT INTO $db_word_post(word_id, post_id) VALUES(%word%, %post%)" Args=#17:Mask=Маска строки|4:word|4:post| link(onBuild,7539448:doExec,[(712,328)(712,335)]) link(word,5407959:Value,[(685,314)(923,314)]) link(post,2185529:Arg2,[(692,310)(132,310)]) } Add(mysql_query,7539448,721,322) { } Add(ArrayEnum,11720073,476,266) { link(onEnum,3267048:doCompare,[]) } Add(Replace,12167633,217,266) { SubStr="\r\n" DestStr=" " link(onReplace,5542656:doPrint,[]) link(SrcStr,2185529:Arg1,[(223,255)(102,255)(102,310)(125,310)]) } Add(If_else,1128708,574,266) { Type=2 Op2=Integer(3) link(onTrue,2861887:doEvent,[]) link(Op1,9989428:Result,[]) } Add(Length,9989428,574,217) { link(Text,11422504:Var1,[(580,205)(517,205)]) } Add(GetDataEx,11422504,511,300) { Angle=3 link(Data,11720073:Item,[(482,305)]) } Add(Replace,5959172,315,266) { SubStr="\"" DestStr=" " link(onReplace,1112224:doPrint,[]) } Add(VisualText,4575453,343,231) { Lines=#1: | Width=18 Point(Text) } Add(CallFunc,5542656,266,266) { Args=3 Name="preg_replace" IgnoreResult=1 link(onPrint,10240977:doPrint,[(310,272)(310,314)(275,314)(275,356)]) link(Arg1,10281047:Text,[(272,261)(244,261)]) link(Arg2,7399775:Var1,[(279,261)]) } Add(VisualText,10281047,238,231) { Lines=#26:#\[code\](.*?)\[/code\]#is| Width=102 Point(Text) } Add(CallFunc,1112224,371,266) { Args=3 Name="preg_replace" IgnoreResult=1 link(onPrint,8945762:doSplit,[]) link(Arg1,497954:Text,[]) link(Arg2,16526858:Var3,[(384,261)]) } Add(VisualText,497954,371,231) { Lines=#13:#\[(.*?)\]#is| Width=95 Point(Text) } Add(GetDataEx,16526858,343,256) { link(Data,4575453:Text,[]) } Add(Function,4267369,119,322) { Args=1 Name="remove_post" link(onPrint,13926997:doRemovePost,[]) AddHint(-111,-14,85,14,Name) } Add(MultiElementEx,13926997,171,322) { @Hint=#12:Удалить пост| CodeType=1 link(Post,4267369:Arg1,[(177,315)(161,315)(161,364)(125,364)]) } BEGIN_SDK Add(EditMultiEx,16745191,21,21) { WorkCount=#12:doRemovePost| DataCount=#4:Post| Width=713 Height=564 link(doRemovePost,518251:doInline,[(33,27)(33,132)]) } Add(StrCat,12112623,91,126) { Str1="SELECT p.topic, t.forum, p.user FROM $db_posts p, $db_topics t WHERE t.topic_id = p.topic AND p.post_id = " link(onStrCat,7450938:doQuery,[]) link(Str2,13883742:Var1,[(104,107)]) } Add(StrInt,10192298,392,56) { link(Text,16745191:Post,[(398,42)(27,42)]) } Add(Inline,518251,42,126) { InlineCode=#132:global $db_word_post, $db_posts, $db_posts_text, $db_new_posts, $db_search, $db_topics, $db_forums, $db_users,$db_attach,$db_upload;| link(onInline,12112623:doStrCat,[]) } Add(StrCat,4729750,497,126) { Str1="DELETE FROM $db_word_post WHERE post_id = " link(onStrCat,7816670:doWork1,[(543,132)]) } Add(mysql_query,9879218,553,126) { } Add(InfoTip,1992534,490,112) { Info=#6:delete| Width=127 Height=249 } Add(StrCat,15442334,392,175) { Str1="UPDATE $db_topics t, $db_forums f SET f.posts = f.posts - 1, t.posts = t.posts - 1, t.last_post = (SELECT post_id FROM $db_posts WHERE topic = t.topic_id ORDER BY time DESC LIMIT 0,1) WHERE f.forum_id = t.forum AND t.topic_id = " link(onStrCat,3323532:doWork1,[(431,181)]) } Add(mysql_query,10354999,441,175) { } Add(InfoTip,3529785,385,161) { Info=#6:update| Width=99 Height=151 } Add(InfoTip,5186645,490,35) { Info=#13:индекс поиска|5:посты|11:новые посты|16:результат поиска|6:голоса| HAlign=0 Width=127 Height=74 Margin=3 } Add(InfoTip,10871366,434,273) { Info=#5:топик|5:форум| HAlign=0 Width=43 Margin=3 } Add(GetDataEx,228611,392,102) { link(Data,10192298:Result,[]) } Add(mysql_query,7450938,140,126) { link(onQuery,3353697:doFetchRow,[]) } Add(HubEx,3323532,427,182) { link(onEvent,10354999:doExec,[]) } Add(GlobalVar,16183624,336,140) { Name="_GET" } Add(ArrayItem,11567288,336,175) { Name="t" link(onGet,15442334:doStrCat,[]) link(Array,16183624:Var,[]) } Add(Hub,974371,238,126) { OutCount=5 link(onEvent1,5262508:doData,[]) link(onEvent2,717222:doRead,[(278,139)(278,181)]) link(onEvent3,8991094:doRead,[(278,146)(278,230)]) link(onEvent4,4280685:doRead,[(278,153)(278,279)]) link(onEvent5,8637811:doRead,[(278,160)(278,391)]) } Add(StringBuilder,9856406,392,448) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,13325546:doEcho,[]) } Add(Echo,13325546,441,448) { } Add(DoData,5262508,392,126) { link(onEventData,5146888:doEvent,[]) link(Data,228611:Var2,[]) } Add(Hub,5146888,441,126) { OutCount=5 link(onEvent1,4729750:doStrCat,[]) link(onEvent2,11445769:doStrCat,[(485,139)(485,181)]) link(onEvent3,1870910:doStrCat,[(485,146)(485,230)]) link(onEvent4,15443466:doStrCat,[(485,153)(485,279)]) link(onEvent5,4904170:doStrCat,[(485,160)(485,328)]) } Add(StrCat,11445769,497,175) { Str1="DELETE p.*, pt.* FROM $db_posts p, $db_posts_text pt WHERE p.post_id = pt.post AND pt.post = " link(onStrCat,16010861:doWork2,[]) } Add(HubEx,7816670,539,133) { link(onEvent,9879218:doExec,[]) } Add(StrCat,1870910,497,224) { Str1="DELETE FROM $db_search WHERE post_id = " link(onStrCat,13667321:doWork2,[]) } Add(HubEx,16010861,539,175) { Angle=3 link(onEvent,7816670:doWork3,[]) } Add(StrCat,15443466,497,273) { Str1="DELETE FROM $db_new_posts WHERE post_id = " link(onStrCat,2179229:doWork2,[]) } Add(HubEx,13667321,539,224) { Angle=3 link(onEvent,16010861:doWork3,[]) } Add(StrCat,16534958,392,224) { Str1="UPDATE $db_forums f SET f.last_post = (SELECT p.post_id FROM $db_posts p, $db_topics t WHERE p.topic = t.topic_id AND t.forum = f.forum_id ORDER BY p.time DESC LIMIT 0,1) WHERE f.forum_id = " link(onStrCat,16719765:doWork2,[]) } Add(mysql_fetch_row,3353697,189,126) { link(onFetchRow,974371:doEvent,[]) } Add(ArrayRead,8991094,287,224) { Index=1 link(onRead,16534958:doStrCat,[]) } Add(ArrayRead,717222,287,175) { Index=0 link(onRead,11567288:doSet,[(327,181)(327,188)]) link(Array,3353697:Result,[(293,167)(195,167)]) } Add(ArrayRead,4280685,287,273) { Index=2 link(onRead,7349317:doStrCat,[]) } Add(StrCat,7349317,392,273) { Str1="UPDATE $db_users SET posts = posts - 1 WHERE user_id <> -1 AND user_id =" link(onStrCat,16719765:doWork3,[(431,279)]) } Add(HubEx,16719765,427,224) { Angle=3 link(onEvent,3323532:doWork3,[]) } Add(StringBuilder,1890443,336,385) { Mask="SELECT CONCAT(u.cmd,'/',a.file) AS file FROM $db_attach a, $db_upload u WHERE a.type = u.upload_id AND a.post_id = %post%" Args=#17:Mask=Маска строки|5:forum|4:post| link(onBuild,506200:doQuery,[]) link(post,11281228:Var2,[]) } Add(ArrayRead,8637811,287,385) { Index=1 link(onRead,1890443:doBuild,[]) } Add(GetDataEx,13883742,350,102) { Angle=1 link(Data,228611:Var1,[]) } Add(mysql_query,506200,392,385) { link(onQuery,4825699:doNumRows,[]) } Add(mysql_num_rows,4825699,441,385) { link(onNumRows,2204143:doFor,[]) } Add(mysql_fetch_row,6033455,539,385) { link(onFetchRow,5302086:doRead,[]) link(Query,506200:Result,[(545,377)(481,377)(481,429)(398,429)]) } Add(For,2204143,490,385) { link(onEvent,6033455:doFetchRow,[]) link(onStop,8040667:doStrCat,[(530,398)(530,440)]) } Add(ArrayRead,5302086,588,385) { Index=0 link(onRead,11571286:doStrCat,[]) } Add(StrCat,8040667,539,434) { Str1="DELETE FROM $db_attach WHERE post_id = " link(onStrCat,13392696:doExec,[(579,440)(579,447)]) link(Str2,11281228:Var3,[(552,373)]) } Add(mysql_query,13392696,588,434) { } Add(GetDataEx,11281228,350,368) { link(Data,13883742:Var2,[]) } Add(FileTools,8610056,686,385) { } Add(StrCat,11571286,637,385) { Str1="./xf/attach/" link(onStrCat,8610056:doDelete,[(677,391)(677,405)]) } Add(StrCat,4904170,497,322) { Str1="DELETE FROM hiasm_prating WHERE post_id = " link(onStrCat,2179229:doWork3,[(543,328)]) } Add(HubEx,2179229,539,273) { Angle=3 link(onEvent,13667321:doWork3,[]) } END_SDK Add(CallFunc,10240977,287,350) { Args=3 Name="preg_replace" IgnoreResult=1 link(onPrint,5959172:doReplace,[(331,356)(331,314)(303,314)(303,272)]) link(Arg1,12177005:Text,[(293,345)(265,345)]) link(Arg2,7399775:Var2,[]) } Add(Hub,12364388,413,91) { link(onEvent1,12453354:doFetchRow,[]) link(onEvent2,6661320:doStrCat,[(445,104)(445,146)]) } Add(StrCat,6661320,462,140) { Str1="DELETE FROM $db_attach WHERE attach_id = " link(onStrCat,15524359:doExec,[(502,146)(502,153)]) link(Str2,11505635:Var3,[(475,135)]) } Add(mysql_query,15524359,511,140) { } Add(PregReplace,10823992,357,350) { Pattern="#\[scode\](.*?)\[/code\]#is" } Add(Hub,8290150,525,91) { link(onEvent1,5105778:doRead,[]) link(onEvent2,7677518:doRead,[(553,104)(553,146)]) } Add(ArrayRead,7677518,567,140) { Index=1 link(onRead,6208564:doBuild,[]) } Add(StringBuilder,6208564,616,140) { Mask="UPDATE hiasm_attach SET value = value - %size% WHERE id = 1" Args=#17:Mask=Маска строки|4:size| link(onBuild,3608351:doExec,[(656,146)(656,153)]) } Add(mysql_query,3608351,665,140) { } END_SDK Add(MultiElement,7462297,413,161) { @Hint=#5:Юзера| CodeType=1 link(onEvent1,15744966:doWork1,[]) AddHint(90,-130,52,14,@Hint) } BEGIN_SDK Add(EditMulti,2312373,10,17) { EventCount=1 WorkCount=1 Width=447 Height=228 link(doWork1,13489574:doCase,[(26,23)(26,62)]) } Add(Case,13489574,42,56) { Value=Integer(15) link(onNextCase,11276259:doCase,[]) link(onTrue,8316196:doEvent,[(86,69)(86,146)]) } Add(Echo,9831815,147,140) { Message="set\ttext\tf_users_body\r\n" } Add(Hub,8316196,98,140) { link(onEvent1,9831815:doEcho,[]) link(onEvent2,10608559:doWork2,[(138,153)(138,195)]) } Add(MultiElementEx,10164032,189,189) { @Hint=#20:Список пользователей| link(Sort,8894138:Result,[]) link(Start,12233453:Result,[(202,181)(237,181)]) } BEGIN_SDK Add(EditMultiEx,7040546,21,21) { WorkCount=#11:doViewUsers| DataCount=#4:Sort|5:Start| Width=958 Height=221 link(doViewUsers,518251:doInline,[(41,27)(41,118)]) } Add(StringBuilder,5013948,255,112) { Mask="SELECT u.user_id, u.name, u.email, u.register, IF(level = 1, 'Админ', 'Участник') AS stat, u.posts, u.home FROM $db_users u ORDER BY %sort% LIMIT %start%, 30" Args=#17:Mask=Маска строки|4:sort|5:start| link(onBuild,10746269:doQuery,[]) link(start,10894510:Var1,[(275,103)]) } Add(StrArray,7690552,206,63) { Strings=#7:user_id|8:register|4:name|5:posts| } Add(Hub,5607339,112,112) { link(onEvent1,13113281:doEcho,[]) link(onEvent2,10763079:doQuery,[(150,125)(150,181)]) } Add(ArrayRead,3786072,206,112) { link(onRead,5013948:doBuild,[]) link(Array,7690552:Array,[]) link(Index,3131459:Var1,[(219,97)]) } Add(Echo,13113281,157,112) { Message="fadd\t\tf_users_begin\r\n" link(onEcho,3786072:doRead,[]) } Add(mysql_query,10763079,157,175) { SQL="SELECT count(*) FROM $db_users" link(onQuery,12651989:doResult,[]) } Add(mysql_query,10746269,304,112) { link(onQuery,9890175:doNumRows,[]) } Add(mysql_fetch_array,853873,451,112) { link(onFetchArray,8834348:doEvent,[]) link(Query,10746269:Result,[(457,107)(396,107)(396,156)(310,156)]) } Add(StringBuilder,12743305,647,112) { Mask="fadd\t\tf_users_user\t%name%\t%user_id%\t%mail%\t%register%\t%stat%\t%posts%\t%home%\t%start%\t%sort%\r\n" Args=#17:Mask=Маска строки|4:name|7:user_id|4:mail|8:register|4:stat|5:posts|4:home|5:start|4:sort| link(onBuild,4128431:doEcho,[]) link(name,12238891:Get,[]) link(user_id,13801235:Get,[(667,100)(709,100)]) link(mail,6545699:Var1,[(674,100)(559,100)]) link(stat,3027502:Get,[(688,100)(758,100)]) link(posts,14122988:Get,[(695,100)(807,100)]) link(home,9218728:Get,[(702,100)(856,100)]) link(start,10894510:Var3,[(709,103)]) link(sort,3131459:Var3,[(716,97)]) } Add(Echo,8529584,451,175) { Message="fadd\t\tf_users_end\r\nflush\tf_u_body\r\n" } Add(mysql_num_rows,9890175,353,112) { link(onNumRows,429423:doFor,[]) } Add(For,429423,402,112) { link(onEvent,853873:doFetchArray,[]) link(onStop,8529584:doEcho,[(442,125)(442,181)]) } Add(ArrayItem,12238891,654,56) { Name="name" link(Array,11911215:Var2,[]) } Add(ArrayItem,2977540,549,112) { Name="register" link(onGet,8467702:doFormat,[]) } Add(FormatTime,8467702,598,112) { Mask="%d %b %Y %H:%M" link(onFormat,12743305:doBuild,[]) } Add(Echo,4128431,745,112) { } Add(ArrayItem,13801235,703,56) { Name="user_id" link(Array,12497438:Var2,[]) } Add(GetDataEx,11911215,654,39) { Angle=3 link(Data,853873:Result,[(589,44)(589,156)(457,156)]) } Add(MultiElement,6545699,553,56) { CodeType=1 } BEGIN_SDK Add(EditMulti,9393407,10,10) { WorkCount=1 DataCount=1 VarCount=1 link(doWork1,1189609:doCompare,[(39,27)(39,139)]) link(Var1,4621702:Value,[(27,193)(181,193)]) } Add(If_else,1189609,63,133) { Type=2 Op2=Integer(0) link(onTrue,10094955:doGet,[]) link(onFalse,4621702:doClear,[]) link(Op1,12699504:Get,[]) } Add(GlobalVar,7176492,63,56) { Name="udata" } Add(ArrayItem,12699504,63,84) { Name="rank" link(Array,7176492:Var,[]) } Add(Memory,4621702,175,133) { Extern=1 } Add(ArrayItem,10094955,121,133) { Name="email" link(onGet,4621702:doValue,[]) } END_SDK Add(GetDataEx,12497438,703,39) { Angle=3 link(Data,11911215:Var3,[]) } Add(ArrayItem,3027502,752,56) { Name="stat" link(Array,7662803:Var2,[]) } Add(Hub,8834348,497,112) { link(onEvent1,6545699:doWork1,[(538,118)(538,62)]) link(onEvent2,2977540:doGet,[(541,125)(541,118)]) } Add(ArrayItem,14122988,801,56) { Name="posts" link(Array,14271096:Var2,[]) } Add(GetDataEx,7662803,752,39) { Angle=3 link(Data,12497438:Var3,[]) } Add(ArrayItem,9218728,850,56) { Name="home" link(Array,14271096:Var3,[(856,44)]) } Add(GetDataEx,14271096,801,39) { Angle=3 link(Data,7662803:Var3,[]) } Add(GetDataEx,3131459,241,92) { link(Data,7040546:Sort,[(247,45)(27,45)]) } Add(StringBuilder,2780796,255,175) { Mask="call\tmake_pages\tforum_serv.php?q=16&sort=%sort%\t%start%\t%count%\t30" Args=#17:Mask=Маска строки|5:count|4:sort|5:start| link(onBuild,1342417:doEcho,[]) link(sort,3131459:Var2,[(275,152)(247,152)]) link(start,10894510:Var2,[(282,152)(296,152)]) } Add(InfoTip,1641633,145,161) { Info=#5:Pages| Width=251 Height=53 } Add(Echo,6069297,353,175) { Message="\r\nflush\tpages\r\n" } Add(Echo,1342417,304,175) { link(onEcho,6069297:doEcho,[]) } Add(mysql_result,12651989,206,175) { Index=0 link(onResult,2780796:doBuild,[]) } Add(GetDataEx,10894510,290,98) { link(Data,7040546:Start,[(296,37)(34,37)]) } Add(Inline,518251,62,112) { InlineCode=#17:global $db_users;| link(onInline,5607339:doEvent,[]) } END_SDK Add(Vars,10218786,182,98) { Name="sort" Point(Get) } Add(Vars,14964123,224,98) { Name="s" Point(Get) } Add(StrInt,12233453,231,140) { link(Text,14964123:Get,[]) } Add(StrInt,8894138,189,140) { link(Text,10218786:Get,[]) } Add(Case,11276259,98,56) { Value=Integer(16) link(onNextCase,2719076:doCase,[]) link(onTrue,10608559:doWork1,[(165,69)]) } Add(HubEx,10608559,161,189) { link(onEvent,10164032:doViewUsers,[]) } Add(Case,2719076,231,56) { Value=Integer(17) link(onNextCase,10144484:doCase,[]) link(onTrue,16394093:doRemoveUser,[(275,69)(275,104)]) } Add(MultiElementEx,16394093,287,98) { @Hint=#21:Удаление пользователя| CodeType=1 link(onUpdate,10608559:doWork3,[(331,104)(331,233)(165,233)]) } BEGIN_SDK Add(EditMultiEx,5209234,21,21) { WorkCount=#12:doRemoveUser| EventCount=#8:onUpdate| Width=223 Height=214 link(doRemoveUser,7390070:doCompare,[(39,27)(39,146)]) } Add(Vars,14964123,119,49) { Name="u" Point(Get) } Add(StrInt,12233453,126,91) { link(Text,14964123:Get,[]) } Add(StrCat,12892278,119,140) { Str1="DELETE FROM $db_users WHERE posts = 0 AND user_id = " link(onStrCat,11646631:doExec,[(159,146)(159,153)]) link(Str2,12233453:Result,[]) } Add(If_else,7390070,56,140) { Op2=Integer(1) link(onTrue,12892278:doStrCat,[]) link(onFalse,10632643:doEcho,[(104,153)(104,195)]) link(Op1,4955655:Get,[]) } Add(GlobalVar,12736411,56,56) { Name="udata" } Add(ArrayItem,4955655,56,91) { Name="level" link(Array,12736411:Var,[]) } Add(mysql_query,11646631,168,140) { link(onQuery,5209234:onUpdate,[(222,146)(222,27)]) } Add(Echo,10632643,119,189) { Message="mes\tНедостаточно прав для выполнения этой операции\r\n" } END_SDK Add(Case,10144484,287,56) { Value=Integer(52) link(onNextCase,2312373:onEvent1,[(388,62)(388,23)]) link(onTrue,7143599:doAddMoney,[(335,69)(335,104)]) } Add(MultiElementEx,7143599,350,98) { @Hint=#16:Начисление денег| CodeType=1 } BEGIN_SDK Add(EditMultiEx,14126912,21,21) { WorkCount=#10:doAddMoney| link(doAddMoney,7390070:doCompare,[(39,27)(39,139)]) } Add(Vars,14964123,119,42) { Name="u" Point(Get) } Add(If_else,7390070,56,133) { Op2=Integer(1) link(onTrue,900075:doBuild,[]) link(onFalse,10632643:doEcho,[(104,146)(104,188)]) link(Op1,4955655:Get,[]) } Add(GlobalVar,12736411,56,49) { Name="udata" } Add(ArrayItem,4955655,56,84) { Name="level" link(Array,12736411:Var,[]) } Add(mysql_query,11646631,168,133) { } Add(Echo,10632643,119,182) { Message="mes\tНедостаточно прав для выполнения этой операции\r\n" } Add(Vars,11850254,161,42) { Name="m" Point(Get) } Add(StringBuilder,900075,119,133) { Mask="UPDATE hiasm_users SET money = money + %money% WHERE user_id = %user%" Args=#17:Mask=Маска строки|4:user|5:money| link(onBuild,11646631:doExec,[(159,139)(159,146)]) link(user,14964123:Get,[]) link(money,11850254:Get,[(139,103)(174,103)]) } END_SDK END_SDK Add(MultiElement,15744966,462,161) { @Hint=#6:online| CodeType=1 link(onEvent1,16051576:doWork1,[]) AddHint(40,-105,50,14,@Hint) } BEGIN_SDK Add(EditMulti,2312373,10,10) { EventCount=1 WorkCount=1 Width=405 Height=228 link(doWork1,13489574:doCase,[(26,16)(26,62)]) } Add(Case,13489574,42,56) { Value=Integer(18) link(onNextCase,7265793:doCase,[]) link(onTrue,8316196:doEvent,[(86,69)(86,146)]) } Add(Echo,9831815,147,140) { Message="set\ttext\tf_online_body\r\n" } Add(Hub,8316196,98,140) { link(onEvent1,9831815:doEcho,[]) link(onEvent2,5169166:doViewUsers,[(143,153)(143,195)]) } Add(MultiElementEx,5169166,189,189) { @Hint=#19:Пользователи online| link(Start,12233453:Result,[]) } BEGIN_SDK Add(EditMultiEx,7040546,21,21) { WorkCount=#11:doViewUsers| DataCount=#5:Start| Width=867 Height=221 link(doViewUsers,518251:doInline,[(30,27)(30,118)]) } Add(StringBuilder,5013948,255,112) { Mask="SELECT u.name, s.* FROM $db_users u, $db_sessions s WHERE u.user_id = s.user_id ORDER BY s.time LIMIT %start%, 40" Args=#17:Mask=Маска строки|5:start| link(onBuild,10746269:doQuery,[]) link(start,10894510:Var1,[(268,103)]) } Add(Inline,518251,62,112) { InlineCode=#31:global $db_users, $db_sessions;| link(onInline,5607339:doEvent,[]) } Add(Hub,5607339,112,112) { link(onEvent1,13113281:doEcho,[]) link(onEvent2,10763079:doQuery,[(150,125)(150,181)]) } Add(GetDataEx,10894510,290,98) { link(Data,7040546:Start,[(296,36)(27,36)]) } Add(Echo,13113281,157,112) { Message="fadd\t\tf_online_begin\r\n" link(onEcho,5013948:doBuild,[]) } Add(mysql_query,10763079,157,175) { SQL="SELECT count(*) FROM $db_sessions" link(onQuery,12651989:doResult,[]) } Add(mysql_query,10746269,304,112) { link(onQuery,9890175:doNumRows,[]) } Add(mysql_fetch_array,853873,451,112) { link(onFetchArray,12856623:doEvent,[]) link(Query,10746269:Result,[(457,107)(396,107)(396,156)(310,156)]) } Add(StringBuilder,12743305,647,175) { Mask="fadd\t\tf_online_user\t%name%\t%user_id%\t%info%\t%atime%\t%time%\t%ip%\r\n" Args=#17:Mask=Маска строки|4:name|7:user_id|4:info|5:atime|4:time|2:ip| link(onBuild,4128431:doEcho,[]) link(name,12238891:Get,[]) link(user_id,13801235:Get,[(667,163)(709,163)]) link(info,10094955:Get,[(674,163)(758,163)]) link(atime,3027502:Get,[(681,163)(807,163)]) link(ip,11903516:Var1,[(695,159)(552,159)]) } Add(Echo,8529584,451,175) { Message="fadd\t\tf_online_end\r\nflush\tf_o_body\r\n" } Add(mysql_num_rows,9890175,353,112) { link(onNumRows,429423:doFor,[]) } Add(For,429423,402,112) { link(onEvent,853873:doFetchArray,[]) link(onStop,8529584:doEcho,[(442,125)(442,181)]) } Add(ArrayItem,12238891,654,119) { Name="name" link(Array,11911215:Var2,[]) } Add(ArrayItem,2977540,549,175) { Name="time" link(onGet,8467702:doFormat,[]) } Add(FormatTime,8467702,598,175) { Mask="%d %b %Y %H:%M" link(onFormat,12743305:doBuild,[]) } Add(Echo,4128431,717,175) { } Add(ArrayItem,13801235,703,119) { Name="user_id" link(Array,12497438:Var2,[]) } Add(GetDataEx,11911215,654,102) { Angle=3 link(Data,853873:Result,[(490,107)(490,152)(457,152)]) } Add(ArrayItem,10094955,752,119) { Name="info" link(Array,11602277:Var2,[]) } Add(GetDataEx,12497438,703,102) { Angle=3 link(Data,11911215:Var3,[]) } Add(ArrayItem,3027502,801,119) { Name="req_time" link(Array,11602277:Var3,[(807,107)]) } Add(GetDataEx,11602277,752,102) { Angle=3 link(Data,12497438:Var3,[]) } Add(Hub,12856623,497,112) { link(onEvent1,11903516:doWork1,[]) link(onEvent2,2977540:doGet,[(535,125)(535,181)]) } Add(MultiElement,11903516,546,112) { CodeType=1 } BEGIN_SDK Add(EditMulti,9657225,10,10) { WorkCount=1 VarCount=1 Width=251 link(doWork1,6260624:doCompare,[(39,27)(39,146)]) link(Var1,986705:Value,[(27,212)(230,212)]) } Add(If_else,6260624,56,140) { Op2=Integer(1) link(onTrue,8845627:doWork2,[]) link(onFalse,10051193:doCompare,[(96,153)(96,181)]) link(Op1,7742670:Get,[]) } Add(GlobalVar,3377802,56,56) { Name="udata" } Add(ArrayItem,7742670,56,91) { Name="level" link(Array,15577228:Var2,[]) } Add(Memory,986705,224,140) { Extern=1 } Add(ArrayItem,5246053,168,140) { Name="ip" link(onGet,986705:doValue,[]) } Add(If_else,10051193,105,175) { Type=2 Op2=Integer(1) link(onTrue,8845627:doWork3,[(151,181)]) link(onFalse,986705:doClear,[(210,188)(210,153)]) link(Op1,430948:Get,[]) } Add(ArrayItem,430948,105,91) { Name="rank" link(Array,15577228:Var3,[(111,79)]) } Add(GetDataEx,15577228,56,74) { link(Data,3377802:Var,[]) } Add(HubEx,8845627,147,140) { link(onEvent,5246053:doGet,[]) } END_SDK Add(Echo,1342417,304,175) { link(onEcho,6069297:doEcho,[]) } Add(Echo,6069297,353,175) { Message="\r\nflush\tpages\r\n" } Add(mysql_result,12651989,206,175) { Index=0 link(onResult,2780796:doBuild,[]) } Add(StringBuilder,2780796,255,175) { Mask="call\tmake_pages\tforum_serv.php?q=18\t%start%\t%count%\t40" Args=#17:Mask=Маска строки|5:count|5:start| link(onBuild,1342417:doEcho,[]) link(start,10894510:Var2,[(275,154)(296,154)]) } Add(InfoTip,1641633,145,161) { Info=#5:Pages| Width=251 Height=53 } END_SDK Add(StrInt,12233453,189,112) { link(Text,14964123:Get,[]) } Add(Vars,14964123,182,70) { Name="s" Point(Get) } Add(Case,7265793,245,56) { Value=Integer(23) link(onNextCase,2312373:onEvent1,[(346,62)(346,16)]) } END_SDK Add(MultiElement,16051576,511,161) { @Hint=#5:поиск| CodeType=1 link(onEvent1,14886961:doWork1,[]) AddHint(-10,-79,48,14,@Hint) } BEGIN_SDK Add(EditMulti,10681272,1,7) { EventCount=1 WorkCount=1 Width=1098 Height=599 link(doWork1,13489574:doCase,[(19,13)(19,62)]) } Add(Case,13489574,36,56) { Value=Integer(19) link(onNextCase,15140767:doCase,[]) link(onTrue,6658961:doEcho,[(87,69)(87,244)]) } Add(Vars,7015695,225,84) { Name="text" } Add(CallFunc,888842,225,133) { Args=1 Name="cvt_text" IgnoreResult=1 link(onPrint,4965261:doSplit,[]) link(Arg1,7015695:Post,[]) } Add(ArraySplit,4965261,274,133) { Delimiter=" " link(onSplit,12744073:doEnum,[]) } Add(ArrayEnum,12744073,323,133) { Point(Index) link(onEnum,14395141:doCompare,[]) link(onEndEnum,11637520:doBuild,[(361,146)(361,244)]) } Add(If_else,14395141,372,133) { Type=5 Op2=String() link(onTrue,8946775:doBuild,[]) } Add(StringBuilder,8946775,421,133) { Mask="SELECT wp.post_id FROM $db_word_list wl, $db_word_post wp WHERE wl.word = '%word%' AND wl.word_id = wp.word_id" Args=#17:Mask=Маска строки|4:word|4:type| link(onBuild,8184931:doQuery,[]) } Add(mysql_query,8184931,470,133) { link(onQuery,11982823:doNumRows,[]) } Add(mysql_num_rows,11982823,519,133) { link(onNumRows,15976004:doEvent,[]) } Add(StringBuilder,9856406,1009,238) { Mask="mes\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,13325546:doEcho,[]) } Add(Echo,13325546,1058,238) { } Add(mysql_fetch_row,1196319,715,133) { link(onFetchRow,7626531:doRead,[]) link(Query,8184931:Result,[(721,121)(574,121)(574,177)(476,177)]) } Add(If_else,13960625,617,133) { link(onTrue,4585109:doFor,[]) } Add(mysql_query,6215418,323,84) { link(onQuery,1310120:doStrCat,[]) } Add(StrCat,13190327,274,84) { Str1="DELETE FROM $db_search WHERE user_id = " link(onStrCat,6215418:doExec,[(314,90)(314,97)]) link(Str2,5320755:Var1,[(287,72)]) } Add(Hub,4559838,155,84) { OutCount=3 link(onEvent1,13190327:doStrCat,[]) link(onEvent2,888842:doPrint,[(206,97)(206,139)]) link(onEvent3,6717801:doWork1,[(201,104)]) } Add(Echo,3577114,106,84) { Message="set\ttext\tf_search_body\r\n" link(onEcho,4559838:doEvent,[]) } Add(MultiElementEx,9549693,225,238) { @Hint=#16:Вывод результата| link(Data1,5320755:Var2,[(231,212)(350,212)]) link(Start,5687170:Result,[(238,226)(112,226)]) } BEGIN_SDK Add(EditMultiEx,9115128,21,21) { WorkCount=#6:doEcho| DataCount=#5:Data1|5:Start| Width=944 Height=270 link(doEcho,518251:doInline,[(38,27)(38,104)]) } Add(Echo,5928751,546,217) { Message="fadd\t\tf_search_end\r\nflush\tf_s_body\r\n" link(onEcho,11112641:doBuild,[]) } Add(StringBuilder,4896067,350,161) { Mask="SELECT pt.text, t.title, IF(p.user = -1, p.guest, u.name) AS name, p.post_id FROM $db_search s, $db_posts_text pt, $db_posts p, $db_users u, $db_topics t WHERE s.user_id = %user% AND s.post_id = pt.post AND p.post_id = pt.post AND p.topic = t.topic_id AND p.user = u.user_id %type% LIMIT %start%, 20" Args=#17:Mask=Маска строки|4:user|4:type|5:start| link(onBuild,248849:doQuery,[]) link(user,16006028:Var3,[(363,79)]) link(type,12919342:Value,[(370,147)(503,147)]) link(start,15582962:Var1,[(377,156)]) } Add(mysql_query,248849,399,161) { link(onQuery,11250658:doNumRows,[]) } Add(mysql_fetch_row,14245273,546,161) { link(onFetchRow,130842:doBuild,[]) link(Query,248849:Result,[(552,152)(484,152)(484,205)(405,205)]) } Add(ArrayRead,8250073,644,112) { Index=0 link(Array,11811645:Var2,[]) } Add(Replace,3158269,644,161) { link(onReplace,14344623:doReplace,[]) link(SrcStr,8250073:Item,[]) link(SubStr,7407946:Var3,[(657,149)]) } Add(StringBuilder,16239393,791,161) { Mask="fadd\t\tf_search_post\t%text%\t%title%\t%user%\t%post%\r\n" Args=#17:Mask=Маска строки|4:text|5:title|4:user|4:post| link(onBuild,2405868:doEcho,[]) link(title,11304849:Result,[(811,153)(797,153)]) link(user,11737973:Item,[(818,153)(846,153)]) link(post,11795495:Item,[(825,153)(895,153)]) } Add(StringBuilder,130842,595,161) { Mask="%text%" Args=#17:Mask=Маска строки|4:text| link(onBuild,3158269:doReplace,[]) link(text,7407946:Var2,[]) } Add(GetDataEx,7407946,602,144) { link(Data,7532093:Item,[]) } Add(mysql_num_rows,11250658,448,161) { link(onNumRows,13539086:doFor,[]) } Add(For,13539086,497,161) { link(onEvent,14245273:doFetchRow,[]) link(onStop,5928751:doEcho,[(537,174)(537,223)]) } Add(Echo,2405868,840,161) { } Add(ArrayRead,16061233,791,56) { Index=1 link(Array,11811645:Var1,[(797,44)(650,44)]) } Add(ArrayRead,11737973,840,112) { Index=2 link(Array,1859123:Var2,[]) } Add(GetDataEx,11811645,644,95) { Angle=3 link(Data,14245273:Result,[(583,100)(583,205)(552,205)]) } Add(GetDataEx,15582962,882,151) { link(Data,9115128:Start,[(888,32)(34,32)]) } Add(Echo,11437204,105,98) { Message="fadd\t\tf_search_begin\r\n" link(onEcho,3760239:doBuild,[]) } Add(StringBuilder,3760239,154,98) { Mask="SELECT * FROM $db_search_session WHERE user_id = %user%" Args=#17:Mask=Маска строки|4:user| link(onBuild,3969379:doQuery,[]) link(user,16006028:Var1,[(167,79)]) } Add(mysql_query,3969379,203,98) { link(onQuery,12734568:doFetchRow,[]) } Add(GetDataEx,16006028,224,74) { link(Data,9115128:Data1,[(230,51)(27,51)]) } Add(Hub,3876057,301,98) { link(onEvent1,10306392:doRead,[]) link(onEvent2,4896067:doBuild,[(341,111)(341,167)]) } Add(mysql_fetch_row,12734568,252,98) { link(onFetchRow,3876057:doEvent,[]) } Add(ArrayRead,10306392,350,98) { Index=1 link(onRead,921531:doCompare,[]) } Add(If_else,921531,399,98) { Op2=Integer(0) link(onTrue,13378442:doStrCat,[]) } Add(Memory,12919342,497,98) { Extern=1 } Add(StrCat,13378442,448,98) { Str1=" AND s.count = " link(onStrCat,12919342:doValue,[]) link(Str2,14922757:Item,[]) } Add(ArrayRead,14922757,455,49) { Index=3 link(Array,9388498:Var2,[]) } Add(mysql_query,10763079,644,217) { link(onQuery,12651989:doResult,[]) } Add(Echo,1342417,791,217) { } Add(StringBuilder,11112641,595,217) { Mask="SELECT count(*) FROM $db_search s, $db_search_session ss WHERE s.user_id = %user% AND ss.user_id = s.user_id AND (ss.type = 1 OR ss.count = s.count)" Args=#17:Mask=Маска строки|4:user| link(onBuild,10763079:doQuery,[]) link(user,16006028:Var2,[(608,208)(230,208)]) } Add(mysql_result,12651989,693,217) { Index=0 link(onResult,2780796:doBuild,[]) } Add(StringBuilder,2780796,742,217) { Mask="call\tmake_pages\tforum_serv.php?q=42\t%start%\t%count%\t20\r\nflush\tpages\r\n" Args=#17:Mask=Маска строки|5:count|5:start| link(onBuild,1342417:doEcho,[]) link(start,15582962:Var2,[(762,199)(888,199)]) } Add(InfoTip,1641633,586,203) { Info=#5:Pages| Width=248 Height=53 } Add(Inline,518251,55,98) { InlineCode=#87:global $db_search_session,$db_search, $db_posts_text, $db_posts, $db_users, $db_topics;| link(onInline,11437204:doEcho,[]) } Add(Replace,14344623,693,161) { SubStr="\r\n" DestStr="\n" link(onReplace,11018389:doReplace,[]) } Add(ArrayRead,7532093,602,49) { Index=2 link(Array,9388498:Var3,[(608,37)]) } Add(GetDataEx,9388498,455,32) { Angle=3 link(Data,12734568:Result,[(292,37)(292,142)(258,142)]) } Add(ArrayRead,11795495,889,112) { Index=3 link(Array,1859123:Var3,[(895,100)]) } Add(GetDataEx,1859123,840,95) { Angle=3 link(Data,11811645:Var3,[]) } Add(HtmlSpecialChars,11304849,791,112) { link(Text,16061233:Item,[]) } Add(Replace,11018389,742,161) { SubStr="\t" DestStr=" " link(onReplace,16239393:doBuild,[]) } END_SDK Add(Case,15140767,477,56) { Value=Integer(42) link(onNextCase,10681272:onEvent1,[(804,62)(804,13)]) link(onTrue,11437204:doEcho,[(521,69)(521,284)(42,284)(42,384)]) } Add(For,4585109,666,133) { link(onEvent,1196319:doFetchRow,[]) } Add(GetDataEx,14438517,617,221) { link(Data,11788621:Result,[]) } Add(GetDataEx,5320755,344,67) { Angle=1 link(Data,15653542:Var1,[]) } Add(StrInt,5687170,106,182) { link(Text,1642134:Get,[]) } Add(Math,11788621,617,182) { Op2=1 Extern=1 link(Op1,14438517:Var3,[(623,172)(655,172)(655,226)]) } Add(StringBuilder,11637520,372,238) { Mask="INSERT INTO $db_search_session(user_id, type, text, count) VALUES(%user%, %type%, '%text%', %count%)" Args=#17:Mask=Маска строки|4:user|4:type|4:text|5:count| link(onBuild,1569124:doExec,[(419,244)(419,251)]) link(user,15653542:Var2,[(385,180)(364,180)]) link(type,15380548:Result,[(392,223)(161,223)]) link(text,888842:Result,[(399,202)(231,202)]) link(count,14438517:Var1,[(406,226)]) } Add(mysql_query,13567636,421,84) { } Add(StrCat,1310120,372,84) { Str1="DELETE FROM $db_search_session WHERE user_id = " link(onStrCat,13567636:doExec,[(412,90)(412,97)]) link(Str2,10316961:Var2,[]) } Add(GetDataEx,10316961,379,67) { Angle=1 link(Data,1994258:Var1,[(739,72)(739,121)]) } Add(mysql_query,1569124,428,238) { } Add(GetDataEx,15653542,358,67) { Angle=1 link(Data,10316961:Var1,[]) } Add(Vars,16568370,155,133) { Name="type" } Add(StrInt,15380548,155,182) { link(Text,16568370:Post,[]) } Add(Hub,15976004,568,133) { link(onEvent1,13960625:doCompare,[]) link(onEvent2,11788621:doOperation,[(608,146)(608,188)]) } Add(StringBuilder,8189550,813,133) { Mask="SELECT COUNT(*) FROM $db_search WHERE user_id = %user% AND post_id = %post% " Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,16215548:doQuery,[]) link(user,1994258:Var2,[]) } Add(GlobalVar,13773912,820,35) { Name="udata" } Add(ArrayItem,2261807,820,70) { Name="user_id" link(Array,13773912:Var,[]) } Add(ArrayRead,7626531,764,133) { Index=0 link(onRead,8189550:doBuild,[]) link(Array,1196319:Result,[(770,124)(753,124)(753,177)(721,177)]) } Add(mysql_query,16215548,862,133) { link(onQuery,4402565:doResult,[]) } Add(GetDataEx,7418240,946,116) { Angle=3 link(Data,1994258:Var3,[]) } Add(If_else,15607402,960,133) { link(onTrue,11725770:doBuild,[]) link(onFalse,11118834:doBuild,[(1000,146)(1000,202)]) } Add(StringBuilder,11725770,1009,133) { Mask="UPDATE $db_search SET count = count + 1 WHERE user_id = %user% AND post_id = %post% " Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,9031276:doExec,[(1049,139)(1049,146)]) link(user,7418240:Var3,[(1022,121)]) link(post,10754613:Var1,[(1029,114)(805,114)]) } Add(GetDataEx,1994258,820,116) { link(Data,2261807:Get,[]) } Add(mysql_query,9031276,1058,133) { } Add(StringBuilder,11118834,1009,196) { Mask="INSERT INTO $db_search(user_id, post_id, count) VALUES(%user%, %post%, 1)" Args=#17:Mask=Маска строки|4:user|4:post| link(onBuild,13687142:doExec,[(1049,202)(1049,209)]) link(user,7418240:Var2,[(1022,184)(952,184)]) link(post,10754613:Var3,[(1029,177)]) } Add(mysql_query,13687142,1058,196) { } Add(mysql_result,4402565,911,133) { Index=0 link(onResult,15607402:doCompare,[]) } Add(GetDataEx,10754613,799,172) { Angle=3 link(Data,7626531:Item,[(770,177)]) } Add(Vars,1642134,99,133) { Name="s" Point(Get) } Add(HubEx,6717801,197,119) { Angle=1 link(onEvent,9549693:doEcho,[(201,244)]) } Add(Echo,6658961,106,238) { Message="set\ttext\tf_search_form\r\n" } Add(StringBuilder,8607867,211,469) { Mask="SELECT pt.text, t.title, IF(p.user = -1, p.guest, u.name) AS name, pt.post FROM hiasm_posts_text pt, hiasm_posts p, hiasm_topics t, hiasm_users u WHERE MATCH(pt.text) AGAINST ('%text%') AND pt.post = p.post_id AND p.topic = t.topic_id AND p.user = u.user_id AND p.topic NOT IN (SELECT topic_id FROM hiasm_pms) %byuser% LIMIT %start%, 30" Args=#17:Mask=Маска строки|5:start|4:text|6:byuser| link(onBuild,16378914:doQuery,[]) link(start,13113578:Var2,[]) link(byuser,12654676:Value,[(238,439)(371,439)]) } Add(mysql_query,16378914,260,469) { link(onQuery,11250658:doNumRows,[]) } Add(StrInt,6983112,218,413) { link(Text,787192:Get,[]) } Add(Vars,787192,211,364) { Name="s" Point(Get) } Add(Vars,11050412,155,420) { Name="text" } Add(CallFunc,13059846,155,469) { Args=1 Name="cvt_text" IgnoreResult=1 link(onPrint,8607867:doBuild,[]) link(Arg1,11050412:Post,[]) } Add(mysql_fetch_row,14245273,407,469) { link(onFetchRow,14344623:doReplace,[]) link(Query,16378914:Result,[(413,457)(339,457)(339,513)(266,513)]) } Add(ArrayRead,8250073,505,420) { Index=0 link(Array,11811645:Var2,[]) } Add(Replace,3158269,505,476) { link(SubStr,7407946:Var3,[(518,457)]) } Add(StringBuilder,16239393,652,469) { Mask="fadd\t\tf_search_post\t%text%\t%title%\t%user%\t%post%\r\n" Args=#17:Mask=Маска строки|4:text|5:title|4:user|4:post| link(onBuild,2405868:doEcho,[]) link(title,11304849:Result,[(672,461)(658,461)]) link(user,11737973:Item,[(679,461)(707,461)]) link(post,11795495:Item,[(686,461)(756,461)]) } Add(StringBuilder,130842,456,476) { Mask="%text%" Args=#17:Mask=Маска строки|4:text| link(onBuild,3158269:doReplace,[]) link(text,7407946:Var2,[]) } Add(GetDataEx,7407946,463,452) { } Add(mysql_num_rows,11250658,309,469) { link(onNumRows,13539086:doFor,[]) } Add(For,13539086,358,469) { link(onEvent,14245273:doFetchRow,[]) link(onStop,5928751:doEcho,[(398,482)(398,538)]) } Add(Echo,2405868,708,469) { } Add(ArrayRead,11737973,701,420) { Index=2 link(Array,1859123:Var2,[]) } Add(Replace,14344623,554,469) { SubStr="\r\n" DestStr="\n" link(onReplace,11018389:doReplace,[]) link(SrcStr,8250073:Item,[(560,461)(511,461)]) } Add(ArrayRead,11795495,750,420) { Index=3 link(Array,1859123:Var3,[(756,408)]) } Add(HtmlSpecialChars,11304849,652,420) { link(Text,16061233:Item,[]) } Add(Replace,11018389,603,469) { SubStr="\t" DestStr=" " link(onReplace,16239393:doBuild,[]) } Add(ArrayRead,16061233,652,364) { Index=1 link(Array,11811645:Var1,[(658,352)(511,352)]) } Add(GetDataEx,11811645,505,403) { Angle=3 link(Data,14245273:Result,[(444,408)(444,513)(413,513)]) } Add(GetDataEx,1859123,701,403) { Angle=3 link(Data,11811645:Var3,[]) } Add(Echo,5928751,407,532) { Message="fadd\t\tf_search_end\r\nflush\tf_s_body\r\n" link(onEcho,3128881:doData,[]) } Add(mysql_query,10763079,505,539) { link(onQuery,12651989:doResult,[]) } Add(Echo,1342417,652,532) { } Add(StringBuilder,11112641,456,539) { Mask="SELECT count(*) FROM hiasm_posts_text pt WHERE MATCH(pt.text) AGAINST ('%text%')" Args=#17:Mask=Маска строки|4:text| link(onBuild,10763079:doQuery,[]) link(text,13059846:Result,[(469,516)(161,516)]) } Add(mysql_result,12651989,554,539) { Index=0 } Add(StringBuilder,2780796,603,532) { Mask="call\tmake_pages\tforum_serv.php?q=42\t%start%\t%count%\t30\r\nflush\tpages" Args=#17:Mask=Маска строки|5:count|5:start|5:owner| link(onBuild,1342417:doEcho,[]) link(start,13113578:Var3,[(594,511)(594,445)(269,445)]) } Add(InfoTip,1641633,449,518) { Info=#5:Pages| Width=248 Height=53 } Add(GetDataEx,13113578,218,452) { link(Data,6983112:Result,[]) } Add(DoData,3128881,491,532) { Data=Integer(1) link(onEventData,2780796:doBuild,[]) } Add(Vars,10713184,155,259) { Name="owner" Point(Get) } Add(StrCat,13089659,309,378) { Str1=" AND p.user = " link(onStrCat,16386725:doWork2,[]) link(Str2,3651953:Get,[(322,366)(315,366)]) } Add(Memory,12654676,365,378) { Default=String() } Add(Hub,11758791,106,378) { link(onEvent1,7526789:doPrint,[(141,384)(141,321)]) link(onEvent2,13059846:doPrint,[(138,391)(138,475)]) } Add(GlobalVar,10188811,309,287) { Name="udata" } Add(Case,16218302,204,315) { Value=String(self) link(onNextCase,13376064:doCase,[]) link(onTrue,13089659:doStrCat,[(249,328)(249,384)]) } Add(Case,13376064,253,315) { Value=String(all) link(onNextCase,15740848:doBuild,[]) } Add(HubEx,16386725,351,378) { link(onEvent,12654676:doValue,[]) } Add(ArrayItem,3651953,309,322) { Name="user_id" link(Array,10188811:Var,[]) } Add(StringBuilder,15740848,358,315) { Mask=" AND u.name = '%name%' " Args=#17:Mask=Маска строки|4:name| link(onBuild,16386725:doWork1,[(402,321)(402,364)(355,364)]) } Add(CallFunc,7526789,155,315) { Args=1 Name="cvt_text" IgnoreResult=1 link(onPrint,16218302:doCase,[]) link(Arg1,10713184:Get,[(161,303)(168,303)]) } Add(Echo,11437204,57,378) { Message="fadd\t\tf_search_begin\r\n" link(onEcho,11758791:doEvent,[]) } END_SDK Add(VisualText,3523579,266,119) { Lines=#4:1384| Point(Text) } Add(ScriptEvents,13015443,315,105) { Script=#22:function CmdEvent(cmd)|23: if(cmd = "build")then|75: sdk.SetProp(3523579, "Lines", int(sdk.GetProp(3523579, "Lines")) + 1) |5: end|3:end|0:|15:function Load()|0:|3:end|0:|15:function Save()|0:|3:end|0:|21:function SaveBefore()|0:|3:end| } Add(MultiElement,14886961,560,161) { @Hint=#6:Аттачи| CodeType=1 link(onEvent1,7434796:doWork1,[]) AddHint(77,-130,56,14,@Hint) } BEGIN_SDK Add(EditMulti,2312373,17,17) { EventCount=1 WorkCount=1 Width=412 Height=228 link(doWork1,13489574:doCase,[(29,23)(29,62)]) } Add(Case,13489574,42,56) { Value=Integer(24) link(onNextCase,11276259:doCase,[]) link(onTrue,8316196:doEvent,[(86,69)(86,146)]) AddHint(-3,-28,27,13,Value) } Add(Echo,9831815,147,140) { Message="set\ttext\tf_attach_body\r\n" } Add(Hub,8316196,98,140) { link(onEvent1,9831815:doEcho,[]) link(onEvent2,10608559:doWork2,[(138,153)(138,195)]) } Add(MultiElementEx,12898131,189,189) { @Hint=#13:Показ аттачей| link(Sort,8894138:Result,[]) link(Start,12233453:Result,[(202,181)(237,181)]) } BEGIN_SDK Add(EditMultiEx,7040546,21,21) { WorkCount=#11:doViewUsers| DataCount=#4:Sort|5:Start| Width=944 Height=221 link(doViewUsers,518251:doInline,[(41,27)(41,118)]) } Add(StringBuilder,5013948,252,112) { Mask="SELECT a.file, a.size, u.name, p.time, a.down, p.topic, a.attach_id, t.title FROM $db_users u, $db_attach a, $db_posts p, $db_topics t, $db_forums f WHERE a.post_id = p.post_id AND p.user = u.user_id AND p.topic = t.topic_id AND t.forum = f.forum_id ORDER BY %sort% LIMIT %start%, 30" Args=#17:Mask=Маска строки|4:sort|5:start| link(onBuild,10746269:doQuery,[]) link(start,10894510:Var1,[(272,100)]) } Add(StrArray,7690552,203,63) { Strings=#11:a.attach_id|6:u.name|6:a.file|6:a.down|6:a.size| } Add(Hub,5607339,105,112) { link(onEvent1,13113281:doEcho,[]) link(onEvent2,10763079:doQuery,[(145,125)(145,181)]) } Add(ArrayRead,3786072,203,112) { link(onRead,5013948:doBuild,[]) link(Array,7690552:Array,[]) link(Index,3131459:Var1,[(216,93)]) } Add(Echo,13113281,154,112) { Message="fadd\t\tf_attach_begin\r\n" link(onEcho,3786072:doRead,[]) } Add(mysql_query,10763079,154,175) { SQL="SELECT COUNT(*) FROM hiasm_attach" link(onQuery,12651989:doResult,[]) } Add(mysql_query,10746269,301,112) { link(onQuery,9890175:doNumRows,[]) } Add(mysql_fetch_array,853873,448,112) { link(onFetchArray,8834348:doEvent,[]) link(Query,10746269:Result,[(454,104)(390,104)(390,155)(307,155)]) } Add(StringBuilder,12743305,644,112) { Mask="fadd\t\tf_attach_file\t%file%\t%attach_id%\t%size%\t%author%\t%time%\t%down%\t%page%\t%start%\t%sort%\t%title%\r\n" Args=#17:Mask=Маска строки|4:file|9:attach_id|4:size|6:author|4:time|4:down|4:page|5:start|4:sort|5:title| link(onBuild,4128431:doEcho,[]) link(file,12238891:Get,[]) link(attach_id,13801235:Get,[(664,100)(706,100)]) link(size,5230741:Var1,[(671,100)(559,100)]) link(author,3027502:Get,[(678,100)(755,100)]) link(down,14122988:Get,[(692,100)(804,100)]) link(page,8154713:Get,[(699,100)(853,100)]) link(start,10894510:Var3,[(706,100)]) link(sort,3131459:Var3,[(713,93)]) link(title,7394592:Get,[(720,100)(902,100)]) } Add(Echo,8529584,448,175) { Message="fadd\t\tf_attach_end\r\nflush\tf_a_body\r\n" } Add(mysql_num_rows,9890175,350,112) { link(onNumRows,429423:doFor,[]) } Add(For,429423,399,112) { link(onEvent,853873:doFetchArray,[]) link(onStop,8529584:doEcho,[(442,125)(442,181)]) } Add(ArrayItem,12238891,651,56) { Name="file" link(Array,11911215:Var2,[]) } Add(ArrayItem,2977540,546,112) { Name="time" link(onGet,8467702:doFormat,[]) } Add(FormatTime,8467702,595,112) { Mask="%d %b %Y %H:%M" link(onFormat,12743305:doBuild,[]) } Add(Echo,4128431,742,112) { } Add(ArrayItem,13801235,700,56) { Name="attach_id" link(Array,12497438:Var2,[]) } Add(GetDataEx,11911215,651,39) { Angle=3 link(Data,853873:Result,[(586,44)(586,156)(454,156)]) } Add(MultiElement,5230741,553,56) { CodeType=1 } BEGIN_SDK Add(EditMulti,9393407,10,10) { WorkCount=1 DataCount=1 VarCount=1 Width=447 link(doWork1,10094955:doGet,[(36,27)(36,62)]) link(Var1,4621702:Value,[(27,207)(328,207)]) } Add(If_else,1189609,105,56) { Type=1 Op2=Integer(1024) link(onTrue,6614209:doStrCat,[]) link(onFalse,2632849:doCompare,[(149,69)(149,118)]) } Add(ArrayItem,10094955,51,56) { Name="size" link(onGet,1189609:doCompare,[]) } Add(Memory,4621702,322,56) { Extern=1 } Add(StrCat,6614209,161,56) { Str2="b" link(onStrCat,6577938:doWork2,[]) } Add(If_else,2632849,161,112) { Type=1 Op2=Integer(1048576) link(onTrue,15399032:doCalc,[]) link(onFalse,16609889:doCalc,[(201,125)(201,167)]) } Add(StrCat,10868548,259,112) { Str2="Kb" link(onStrCat,2118077:doWork2,[]) } Add(MathParse,15399032,210,112) { DataCount=1 MathStr="(int)(%1 / 102.4) / 10" link(onResult,10868548:doStrCat,[]) } Add(HubEx,6577938,301,56) { link(onEvent,4621702:doValue,[]) } Add(StrCat,4221814,259,161) { Str2="Mb" link(onStrCat,2118077:doWork3,[(305,167)]) } Add(MathParse,16609889,210,161) { DataCount=1 MathStr="(int)(%1 / 104857.6) / 10" link(onResult,4221814:doStrCat,[]) } Add(HubEx,2118077,301,112) { Angle=3 link(onEvent,6577938:doWork3,[]) } END_SDK Add(GetDataEx,12497438,700,39) { Angle=3 link(Data,11911215:Var3,[]) } Add(ArrayItem,3027502,749,56) { Name="name" link(Array,7662803:Var2,[]) } Add(Hub,8834348,497,112) { link(onEvent1,5230741:doWork1,[(530,118)(530,62)]) link(onEvent2,2977540:doGet,[(535,125)(535,118)]) } Add(ArrayItem,14122988,798,56) { Name="down" link(Array,3607693:Var2,[]) } Add(GetDataEx,7662803,749,39) { Angle=3 link(Data,12497438:Var3,[]) } Add(Inline,518251,56,112) { InlineCode=#74:global $db_users, $db_posts, $db_attach, $db_topics, $db_pms, $db_forums;| link(onInline,5607339:doEvent,[]) } Add(GetDataEx,10894510,287,95) { link(Data,7040546:Start,[(293,37)(34,37)]) } Add(GetDataEx,3131459,238,88) { link(Data,7040546:Sort,[(244,45)(27,45)]) } Add(StringBuilder,2780796,252,175) { Mask="call\tmake_pages\tforum_serv.php?q=25&sort=%sort%\t%start%\t%count%\t30" Args=#17:Mask=Маска строки|5:count|4:sort|5:start| link(onBuild,1342417:doEcho,[]) link(sort,3131459:Var2,[(272,152)(244,152)]) link(start,10894510:Var2,[(279,153)(293,153)]) } Add(InfoTip,1641633,145,161) { Info=#5:Pages| Width=251 Height=53 } Add(Echo,6069297,350,175) { Message="\r\nflush\tpages\r\n" } Add(Echo,1342417,301,175) { link(onEcho,6069297:doEcho,[]) } Add(mysql_result,12651989,203,175) { Index=0 link(onResult,2780796:doBuild,[]) } Add(ArrayItem,8154713,847,56) { Name="topic" link(Array,14758982:Var2,[]) } Add(GetDataEx,3607693,798,39) { Angle=3 link(Data,7662803:Var3,[]) } Add(ArrayItem,7394592,896,56) { Name="title" link(Array,14758982:Var3,[(902,44)]) } Add(GetDataEx,14758982,847,39) { Angle=3 link(Data,3607693:Var3,[]) } END_SDK Add(Vars,10218786,182,98) { Name="sort" Point(Get) } Add(Vars,14964123,224,98) { Name="s" Point(Get) } Add(StrInt,12233453,231,140) { link(Text,14964123:Get,[]) } Add(StrInt,8894138,189,140) { link(Text,10218786:Get,[]) } Add(Case,11276259,98,56) { Value=Integer(25) link(onNextCase,2719076:doCase,[]) link(onTrue,10608559:doWork1,[(165,69)]) AddHint(-3,-28,27,13,Value) } Add(HubEx,10608559,161,189) { link(onEvent,12898131:doViewUsers,[]) } Add(Case,2719076,231,56) { Value=Integer(26) link(onNextCase,6810412:doCase,[]) link(onTrue,9602438:doRemoveUser,[(275,69)(275,104)]) AddHint(-2,-28,27,13,Value) } Add(MultiElementEx,9602438,287,98) { @Hint=#15:Удаление аттача| CodeType=1 link(onUpdate,10608559:doWork3,[(327,104)(327,233)(165,233)]) } BEGIN_SDK Add(EditMultiEx,5209234,21,21) { WorkCount=#12:doRemoveUser| EventCount=#8:onUpdate| Width=265 Height=214 link(doRemoveUser,7390070:doCompare,[(39,27)(39,146)]) } Add(Vars,14964123,210,42) { Name="a" Point(Get) } Add(StrInt,12233453,217,84) { link(Text,14964123:Get,[]) } Add(CallFunc,4279562,217,140) { Args=1 Name="remove_attach" link(onPrint,5209234:onUpdate,[(264,146)(264,27)]) link(Arg1,9397740:Var2,[]) } Add(If_else,7390070,56,140) { Op2=Integer(1) link(onTrue,2615725:doStrCat,[]) link(onFalse,10632643:doEcho,[(104,153)(104,195)]) link(Op1,4955655:Get,[]) } Add(GlobalVar,12736411,56,56) { Name="udata" } Add(ArrayItem,4955655,56,91) { Name="level" link(Array,12736411:Var,[]) } Add(Echo,10632643,119,189) { Message="mes\tНедостаточно прав для выполнения этой операции\r\n" } Add(StrCat,2615725,119,140) { Str1="UPDATE hiasm_attach SET type = 0 WHERE attach_id = " link(onStrCat,3364716:doExec,[(159,146)(159,153)]) link(Str2,9397740:Var1,[(132,128)]) } Add(mysql_query,3364716,168,140) { link(onQuery,4279562:doPrint,[]) } Add(GetDataEx,9397740,217,123) { link(Data,12233453:Result,[]) } END_SDK Add(Case,6810412,285,56) { Value=Integer(32) link(onNextCase,2312373:onEvent1,[(373,62)(373,23)]) link(onTrue,6497949:doShowAttach,[(333,69)(333,153)]) AddHint(-1,-29,27,13,Value) } Add(MultiElementEx,6497949,343,147) { @Hint=#13:Аттачи топика| link(topic,6829452:Result,[]) } BEGIN_SDK Add(EditMultiEx,14028241,21,21) { WorkCount=#12:doShowAttach| DataCount=#5:topic| Width=685 link(doShowAttach,518251:doInline,[(35,27)(35,97)]) } Add(Inline,518251,49,91) { InlineCode=#40:global $db_posts, $db_attach, $db_users;| link(onInline,10656550:doEcho,[]) } Add(StringBuilder,10117440,147,91) { Mask="SELECT a.file, a.size, a.attach_id,IF(p.user = -1, p.guest, u.name) AS user, p.time FROM $db_attach a, $db_posts p, $db_users u WHERE a.post_id = p.post_id AND p.topic = %topic% AND p.user = u.user_id ORDER BY p.post_id" Args=#17:Mask=Маска строки|5:topic| link(onBuild,7764279:doQuery,[]) link(topic,14028241:topic,[(160,56)(27,56)]) } Add(mysql_query,7764279,196,91) { link(onQuery,12417519:doNumRows,[]) } Add(mysql_num_rows,12417519,245,91) { link(onNumRows,2782589:doFor,[]) } Add(For,2782589,294,91) { link(onEvent,16189190:doFetchRow,[]) link(onStop,14110782:doEcho,[(334,104)(334,153)]) } Add(mysql_fetch_row,16189190,343,91) { link(onFetchRow,4010533:doEvent,[]) link(Query,7764279:Result,[(349,79)(283,79)(283,132)(202,132)]) } Add(StringBuilder,15807879,532,140) { Mask="fadd\t\tf_topic_a_body\t%file%\t%size%\t%aid%\t%user%\t%time%\r\n" Args=#17:Mask=Маска строки|4:file|4:size|3:aid|4:user|4:time| link(onBuild,2236466:doEcho,[]) link(file,12008369:Item,[]) link(size,11226551:Result,[(552,132)(496,132)]) link(aid,13938930:Item,[(559,132)(594,132)]) link(user,14064457:Item,[(566,132)(643,132)]) } Add(Echo,2236466,595,140) { } Add(Echo,14110782,343,147) { Message="fadd\t\tf_topic_a_end\r\nflush\tf_p_files\r\n" } Add(ArrayRead,8984058,441,91) { Index=1 link(onRead,11226551:doCalc,[]) } Add(Echo,10656550,98,91) { Message="fadd\t\tf_topic_a_begin\r\n" link(onEcho,10117440:doBuild,[]) } Add(ArrayRead,12008369,539,91) { Index=0 link(Array,9003718:Var2,[]) } Add(MathParse,11226551,490,91) { DataCount=1 MathStr="(int)(%1 / 102.4) / 10" } Add(ArrayRead,13938930,588,91) { Index=2 link(Array,11631682:Var2,[]) } Add(GetDataEx,9003718,539,67) { Angle=3 link(Data,16189190:Result,[(410,72)(410,135)(349,135)]) } Add(Hub,4010533,392,91) { link(onEvent1,8984058:doRead,[]) link(onEvent2,15636696:doRead,[(432,104)(432,146)]) } Add(ArrayRead,15636696,441,140) { Index=4 link(onRead,8467702:doFormat,[]) } Add(ArrayRead,14064457,637,91) { Index=3 link(Array,11631682:Var3,[(643,72)]) } Add(GetDataEx,11631682,588,67) { Angle=3 link(Data,9003718:Var3,[]) } Add(FormatTime,8467702,488,140) { Mask="%d %b %Y %H:%M" link(onFormat,15807879:doBuild,[]) } END_SDK Add(Vars,6803361,336,56) { Name="t" Point(Get) } Add(StrInt,6829452,343,98) { link(Text,6803361:Get,[]) } END_SDK Add(MultiElement,7434796,609,161) { @Hint=#11:Регистрация| CodeType=1 link(onEvent1,7261097:doWork1,[]) AddHint(28,-106,85,14,@Hint) } BEGIN_SDK Add(EditMulti,15552559,10,10) { EventCount=1 WorkCount=1 Width=790 Height=263 link(doWork1,2719076:doCase,[(26,16)(26,62)]) } Add(Case,2719076,42,56) { Value=Integer(27) link(onNextCase,8934384:doCase,[]) link(onTrue,10028612:doBuild,[(90,69)(90,188)]) } Add(StringBuilder,2336275,413,182) { Mask="INSERT INTO $db_users(name, pass, last_visit, register, email, home, icq, note, info, avatar, ip) VALUES('%name%', MD5('%pass%'), UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '%mail%', '%home%', '%icq%', '%note%', '%info%', '%avatar%', '%ip%')" Args=#17:Mask=Маска строки|4:name|4:pass|4:mail|4:home|3:icq|4:note|4:info|6:avatar|2:ip| link(onBuild,4954806:doExec,[(498,188)(498,195)]) link(name,5082060:Var2,[]) link(pass,10042763:Post,[(433,146)(475,146)]) link(mail,11402695:Post,[(440,146)(524,146)]) link(home,10305463:Post,[(447,146)(573,146)]) link(icq,7609661:Post,[(454,146)(622,146)]) link(note,10278258:Result,[(461,170)(671,170)]) link(info,3244259:Result,[(468,170)(720,170)]) link(avatar,16302495:Result,[(475,170)(769,170)]) link(ip,16489957:Server,[(482,170)(496,170)]) } Add(mysql_query,4954806,511,182) { link(onQuery,9806419:doEcho,[]) } Add(Vars,14787401,420,35) { Name="name" } Add(CallFunc,888842,420,126) { Args=1 Name="cvt_text" link(Arg1,477672:Result,[]) } Add(Vars,10042763,469,77) { Name="pass" } Add(Vars,11402695,518,77) { Name="mail" } Add(Vars,10305463,567,77) { Name="www" } Add(Vars,7609661,616,77) { Name="icq" } Add(Vars,5547005,665,77) { Name="note" } Add(CallFunc,10278258,665,126) { Args=1 Name="cvt_text" link(Arg1,5547005:Post,[]) } Add(Vars,3828546,714,77) { Name="info" } Add(CallFunc,3244259,714,126) { Args=1 Name="cvt_text" link(Arg1,3828546:Post,[]) } Add(Vars,67567,763,77) { Name="avatar" } Add(CallFunc,16302495,763,126) { Args=1 Name="cvt_text" link(Arg1,67567:Post,[]) } Add(Echo,9806419,560,182) { Message="mes\tРегистрация пройдена успешно!\r\n" } Add(StringBuilder,10028612,105,182) { Mask="SELECT COUNT(*) FROM $db_users WHERE name = '%name%'" Args=#17:Mask=Маска строки|4:name| link(onBuild,4916624:doQuery,[]) link(name,5539916:Var1,[(118,170)]) } Add(mysql_query,4916624,154,182) { link(onQuery,9016172:doResult,[]) } Add(mysql_result,9016172,203,182) { Index=0 link(onResult,11583404:doCompare,[]) } Add(If_else,11583404,252,182) { Op2=Integer(0) link(onTrue,5006000:doLength,[]) link(onFalse,16668828:doEcho,[(292,195)(292,237)]) } Add(Echo,16668828,301,231) { Message="mes\tВведенный ник уже занят\r\n" } Add(GetDataEx,5082060,420,165) { link(Data,888842:Result,[]) } Add(Trim,477672,420,77) { link(Value,14787401:Post,[]) } Add(Length,5006000,301,182) { link(onLength,16145341:doCompare,[]) link(Text,5539916:Var2,[]) } Add(If_else,16145341,350,182) { Type=2 Op2=Integer(2) link(onTrue,2336275:doBuild,[]) link(onFalse,5486837:doEcho,[(398,195)(398,237)]) } Add(Echo,5486837,413,231) { Message="mes\tВаш ник должен состоять из 3х и более символов\r\n" } Add(GetDataEx,5539916,301,165) { Angle=1 link(Data,5082060:Var1,[]) } Add(Case,8934384,105,56) { Value=Integer(28) link(onNextCase,6810412:doCase,[]) link(onTrue,12404710:doLogin,[(145,69)(145,111)]) } Add(MultiElementEx,12404710,154,105) { @Hint=#11:Авторизация| } BEGIN_SDK Add(EditMultiEx,4833105,21,21) { WorkCount=#7:doLogin| Width=671 Height=284 link(doLogin,518251:doInline,[(31,27)(31,97)]) } Add(Inline,518251,42,91) { InlineCode=#31:global $db_users, $db_sessions;| link(onInline,3872978:doCompare,[]) } Add(Echo,6710167,630,189) { Message="hide\tlogin_form\r\nref\r\nshow\tluser\r\n" } Add(SessionVar,10385557,91,42) { Name="ss" } Add(If_else,3872978,91,91) { link(onTrue,1632806:doEcho,[]) link(onFalse,6947201:doEvent,[(131,104)(131,146)]) link(Op1,10385557:IsRegistered,[]) } Add(Echo,1632806,140,91) { Message="mes\tВы уже авторизованы\r\n" } Add(Hub,6947201,140,140) { link(onEvent1,15223243:doBuild,[]) link(onEvent2,15254538:doLoadPlugins,[(180,153)(180,195)]) } Add(StringBuilder,15223243,189,140) { Mask="SELECT user_id, last_visit,name FROM $db_users WHERE name = '%login%' AND pass = MD5('%pass%')" Args=#17:Mask=Маска строки|5:login|4:pass| link(onBuild,14399021:doQuery,[]) link(login,888842:Result,[(202,132)(195,132)]) link(pass,11797310:Result,[(209,132)(244,132)]) } Add(CallFunc,888842,189,91) { Args=1 Name="cvt_text" link(Arg1,14787401:Post,[]) } Add(Vars,14787401,189,42) { Name="login" } Add(Vars,1828048,238,42) { Name="pass" } Add(GetDataEx,6018730,518,172) { Angle=3 link(Data,100565:Item,[(489,177)]) } Add(mysql_query,14399021,238,140) { link(onQuery,649047:doNumRows,[]) } Add(mysql_num_rows,649047,287,140) { link(onNumRows,4335485:doCompare,[]) } Add(If_else,4335485,336,140) { link(onTrue,11801250:doFetchRow,[]) link(onFalse,69434:doEcho,[(376,153)(376,195)]) } Add(Hub,15018974,434,140) { OutCount=3 link(onEvent1,100565:doRead,[]) link(onEvent2,5521142:doRead,[(474,153)(474,195)]) link(onEvent3,240850:doRead,[(474,160)(474,244)]) } Add(ArrayItem,3419704,532,140) { Name="user_id" link(Array,10276869:Get,[]) } Add(GlobalVar,14792565,532,63) { Name="_SESSION" } Add(ArrayItem,10276869,532,91) { Name="ss" link(Array,14792565:Var,[]) } Add(mysql_fetch_row,11801250,385,140) { link(onFetchRow,15018974:doEvent,[]) link(Query,14399021:Result,[(391,126)(328,126)(328,186)(244,186)]) } Add(ArrayRead,100565,483,140) { Index=0 link(onRead,3419704:doSet,[(523,146)(523,153)]) } Add(ArrayRead,5521142,483,189) { Index=1 link(onRead,5071185:doBuild,[]) } Add(StringBuilder,5071185,532,189) { Mask="UPDATE $db_sessions SET user_id = %user_id%, time = %time% WHERE session_id = '%ss_id%'" Args=#17:Mask=Маска строки|7:user_id|4:time|5:ss_id| link(onBuild,16327576:doExec,[(572,195)(572,202)]) link(user_id,6018730:Var3,[(545,177)]) link(ss_id,7218805:Id,[(559,181)(587,181)]) } Add(mysql_query,16327576,581,189) { link(onQuery,6710167:doEcho,[]) } Add(Session,7218805,581,140) { } Add(Echo,69434,385,189) { Message="mes\tНеверный логин или пароль\r\n" } Add(StringBuilder,1363866,532,238) { Mask="set\tluser\tluser\t%name%\t%uid%\r\n" Args=#17:Mask=Маска строки|4:name|3:uid| link(onBuild,3558462:doEcho,[]) link(uid,6018730:Var2,[(552,227)(524,227)]) } Add(Echo,3558462,581,238) { } Add(ArrayRead,240850,483,238) { Index=2 link(onRead,1363866:doBuild,[]) } Add(CallFunc,11797310,238,91) { Args=1 Name="cvt_text" link(Arg1,1828048:Post,[]) } Add(MultiElementEx,15254538,189,189) { @Hint=#16:Загрузка плагина| } BEGIN_SDK Add(EditMultiEx,3156351,21,21) { WorkCount=#13:doLoadPlugins| Width=664 Height=158 link(doLoadPlugins,518251:doInline,[(35,27)(35,118)]) } Add(Inline,518251,49,112) { InlineCode=#30:global $db_attach, $db_upload;| link(onInline,3419704:doGet,[]) } Add(mysql_query,6799103,196,112) { link(onQuery,11533591:doNumRows,[]) } Add(StringBuilder,9069613,147,112) { Mask="SELECT CONCAT('./xf/attach/', u.cmd, '/', a.file) FROM $db_attach a, $db_upload u, hiasm_plugins p WHERE a.attach_id = p.plug AND a.type = u.upload_id AND a.type = 9 AND p.user = %user%" Args=#17:Mask=Маска строки|4:user| link(onBuild,6799103:doQuery,[]) } Add(ArrayItem,10276869,98,63) { Name="ss" link(Array,14792565:Var,[]) } Add(StringBuilder,4500257,588,112) { Mask="load\t%text%\r\n" Args=#17:Mask=Маска строки|4:text| link(onBuild,14943881:doEcho,[]) } Add(Replace,13665921,539,112) { SubStr="\r\n" DestStr="\n" link(onReplace,4500257:doBuild,[]) } Add(FileRead,9029558,490,112) { link(onRead,13665921:doReplace,[]) link(Length,584299:Size,[(503,100)(479,100)(479,156)(454,156)]) } Add(Echo,14943881,637,112) { } Add(File,584299,441,112) { Mode="r" AutoClose=1 Point(Size) link(onOpen,9029558:doRead,[]) } Add(ArrayItem,3419704,98,112) { Name="user_id" link(onGet,9069613:doBuild,[]) link(Array,10276869:Get,[]) } Add(GlobalVar,14792565,98,35) { Name="_SESSION" } Add(mysql_num_rows,11533591,245,112) { link(onNumRows,7292825:doFor,[]) } Add(For,7292825,294,112) { link(onEvent,13352245:doFetchRow,[]) } Add(mysql_fetch_row,13352245,343,112) { link(onFetchRow,15228582:doRead,[]) link(Query,6799103:Result,[(349,100)(284,100)(284,156)(202,156)]) } Add(ArrayRead,15228582,392,112) { Index=0 link(onRead,584299:doOpen,[]) } END_SDK END_SDK Add(Case,6810412,154,56) { Value=Integer(29) link(onNextCase,12119066:doCase,[]) link(onTrue,3418303:doBuild,[(194,69)(194,111)]) } Add(mysql_query,2605316,252,105) { link(onQuery,4424607:doEvent,[]) } Add(SessionVar,7735504,350,91) { Name="ss" } Add(Session,6897103,210,35) { } Add(Echo,5086657,350,133) { Message="hide\tluser\r\nshow\tlogin_form\r\nref\r\n" } Add(StringBuilder,3418303,203,105) { Mask="UPDATE $db_sessions SET user_id = -1 WHERE session_id = '%sid%'" Args=#17:Mask=Маска строки|3:sid| link(onBuild,2605316:doExec,[(243,111)(243,118)]) link(sid,6897103:Id,[]) } Add(Hub,4424607,301,105) { link(onEvent1,7735504:doUnregister,[(341,111)(341,104)]) link(onEvent2,5086657:doEcho,[(341,118)(341,139)]) } Add(Case,12119066,252,56) { Value=Integer(46) link(onNextCase,15552559:onEvent1,[(546,62)(546,16)]) link(onTrue,11605021:doAddPlug,[]) } Add(MultiElementEx,11605021,301,63) { @Hint=#19:Добавление плагина | CodeType=1 } BEGIN_SDK Add(EditMultiEx,4593106,21,21) { WorkCount=#9:doAddPlug| Height=221 link(doAddPlug,3493812:doCompare,[(35,27)(35,132)]) } Add(StringBuilder,4636696,98,126) { Mask="INSERT INTO hiasm_plugins(plug, user) VALUES(%plug%, %user%)" Args=#17:Mask=Маска строки|4:user|4:plug| link(onBuild,7488329:doWork1,[(151,132)]) link(user,13347305:Var3,[(111,114)]) link(plug,16437551:Var1,[(118,114)]) } Add(GlobalVar,14725779,98,42) { Name="udata" } Add(ArrayItem,9088991,98,70) { Name="user_id" link(Array,14725779:Var,[]) } Add(Vars,14787401,147,70) { Name="p" Point(Get) } Add(mysql_query,12285644,168,126) { } Add(If_else,3493812,49,126) { Op1=Integer(1) link(onTrue,4636696:doBuild,[]) link(onFalse,3515240:doBuild,[(89,139)(89,195)]) link(Op2,5204876:Get,[]) } Add(Vars,5204876,49,70) { Name="m" Point(Get) } Add(StringBuilder,3515240,98,189) { Mask="DELETE FROM hiasm_plugins WHERE plug = %plug% AND user = %user%" Args=#17:Mask=Маска строки|4:user|4:plug| link(onBuild,7488329:doWork3,[(151,195)]) link(user,13347305:Var1,[(111,173)(93,173)(93,114)]) link(plug,16437551:Var2,[(118,173)(139,173)]) } Add(GetDataEx,13347305,98,109) { link(Data,9088991:Get,[]) } Add(GetDataEx,16437551,133,109) { Angle=1 link(Data,14787401:Get,[(160,114)]) } Add(HubEx,7488329,147,133) { link(onEvent,12285644:doExec,[]) } END_SDK Add(Vars,16489957,483,126) { Name="REMOTE_ADDR" Point(Server) } END_SDK Add(MultiElement,7261097,658,161) { @Hint=#7:Профайл| CodeType=1 link(onEvent1,4682611:doWork1,[]) AddHint(-21,-82,65,14,@Hint) } BEGIN_SDK Add(EditMulti,13690204,10,10) { EventCount=1 WorkCount=1 Width=314 Height=186 link(doWork1,2719076:doCase,[(26,16)(26,62)]) } Add(Case,2719076,42,56) { Value=Integer(33) link(onNextCase,6653883:doCase,[]) link(onTrue,9594407:doBuild,[(82,69)(82,167)]) } Add(MultiElementEx,9594407,91,161) { @Hint=#19:Показ профиля=Показ| @IsLib=True link(Data,94195:Get,[(97,153)(104,153)]) } BEGIN_SDK Add(EditMultiEx,2802881,21,21) { WorkCount=#7:doBuild| DataCount=#4:Data| Width=685 Height=214 link(doBuild,518251:doInline,[(42,27)(42,181)]) } Add(Echo,2607508,511,182) { } Add(ArrayItem,12882217,308,182) { Name="name" link(onGet,13282808:doBuild,[]) } Add(StringBuilder,13282808,357,182) { Mask="set\tpbody\tprofile\t%user%\t%rank%\t%reg_time%\t%mail%\t%www%\t%icq%\t%posts%\t%topics%\t%last_post%\t%sha%\t%el%\t%avatar%\t%info%\t%last_time%\t%uid%\t%note%\t%sha_pub%\t%sha_users%\r\n" Args=#17:Mask=Маска строки|4:user|4:rank|8:reg_time|4:mail|3:www|3:icq|5:posts|6:topics|9:last_post|3:sha|2:el|6:avatar|4:info|9:last_time|3:uid|4:note|7:sha_pub|9:sha_users| link(onBuild,2607508:doEcho,[]) link(rank,9933182:Item,[]) link(reg_time,11943322:Var1,[(384,170)(314,170)]) link(mail,11943322:Var6,[(391,170)(349,170)]) link(www,829044:Get,[(398,170)(447,170)]) link(icq,15195497:Get,[(405,170)(489,170)]) link(posts,12120659:Get,[(412,170)(531,170)]) link(topics,11943322:Var2,[(419,170)(321,170)]) link(last_post,11943322:Var3,[(426,170)(328,170)]) link(sha,11943322:Var4,[(433,170)(335,170)]) link(el,11943322:Var5,[(440,170)(342,170)]) link(avatar,11943322:Var7,[(447,170)(356,170)]) link(info,8261600:Get,[(454,170)(573,170)]) link(last_time,11943322:Var8,[(461,170)(363,170)]) link(uid,7065512:Get,[(468,170)(615,170)]) link(note,9023871:Get,[(475,170)(657,170)]) link(sha_pub,11943322:Var9,[(482,170)(370,170)]) link(sha_users,11943322:Var10,[(489,170)(377,170)]) } Add(StrArray,5092043,371,77) { Strings=#8:Участник|12:Пользователь|8:Советник|5:Админ| } Add(ArrayRead,9933182,371,126) { link(Array,5092043:Array,[]) link(Index,10314129:Get,[]) } Add(ArrayItem,10314129,378,70) { Name="rank" link(Array,5798163:Var2,[]) } Add(MultiElement,11943322,308,126) { CodeType=1 link(Data1,15359164:Var3,[(314,114)]) } BEGIN_SDK Add(EditMulti,6623957,10,13) { WorkCount=1 DataCount=1 VarCount=10 Width=510 Height=585 link(doWork1,2295210:doEvent,[(22,19)(22,41)]) link(Var1,15052567:Value,[(16,87)(188,87)]) link(Var2,11080300:Result,[(23,134)(188,134)]) link(Var3,4887456:Value,[(30,182)(384,182)]) link(Var4,608112:Result,[(37,270)(188,270)]) link(Var5,6444404:Result,[(44,295)(335,295)]) link(Var6,4621702:Value,[(51,390)(188,390)]) link(Var7,12798520:Value,[(58,488)(384,488)]) link(Var8,1038619:Value,[(65,496)(188,496)]) link(Var9,4888682:Result,[(72,567)(188,567)]) link(Var10,10868820:Result,[(79,567)(335,567)]) } Add(Hub,2295210,35,35) { OutCount=8 link(onEvent1,6317783:doGet,[]) link(onEvent2,5721658:doStrCat,[(75,48)(75,97)]) link(onEvent3,16452535:doGet,[(75,55)(75,146)]) link(onEvent4,16212448:doStrCat,[(75,62)(75,237)]) link(onEvent5,1189609:doCompare,[(75,69)(75,356)]) link(onEvent6,11192144:doGet,[(75,76)(75,405)]) link(onEvent7,12446726:doGet,[(75,83)(75,454)]) link(onEvent8,16316829:doStrCat,[(75,90)(75,510)]) } Add(FormatTime,8467702,131,35) { Mask="%d %b %Y %H:%M" link(onFormat,15052567:doValue,[]) } Add(ArrayItem,6317783,84,35) { Name="register" link(onGet,8467702:doFormat,[]) } Add(Memory,15052567,182,35) { } Add(StrCat,5721658,84,91) { Str1="SELECT COUNT(*) FROM $db_topics WHERE user = " link(onStrCat,4257587:doQuery,[]) link(Str2,6588356:Var3,[(97,79)]) } Add(mysql_query,4257587,133,91) { link(onQuery,11080300:doResult,[]) } Add(mysql_result,11080300,182,91) { Index=0 } Add(Memory,4887456,378,140) { } Add(mysql_query,3132251,231,140) { link(onQuery,5992166:doResult,[]) } Add(mysql_result,5992166,280,140) { Index=0 link(onResult,12976527:doFormat,[]) } Add(FormatTime,12976527,327,140) { Mask="%d %b %Y %H:%M" link(onFormat,2442595:doWork2,[]) } Add(StringBuilder,6620619,182,140) { Mask="SELECT time FROM $db_posts WHERE user = %user% ORDER BY time DESC LIMIT 1" Args=#17:Mask=Маска строки|4:user| link(onBuild,3132251:doQuery,[]) link(user,694205:Var3,[(195,128)]) } Add(GetDataEx,6588356,49,74) { Angle=3 link(Data,6623957:Data1,[(16,79)]) } Add(If_else,10028375,133,140) { link(onTrue,6620619:doBuild,[]) link(onFalse,5969966:doData,[(173,153)(173,195)]) } Add(ArrayItem,16452535,84,140) { Name="posts" link(onGet,10028375:doCompare,[]) } Add(DoData,5969966,182,189) { Data=String((не найдено)) link(onEventData,2442595:doWork3,[(368,195)]) } Add(HubEx,2442595,364,140) { link(onEvent,4887456:doValue,[]) } Add(StrCat,16212448,84,231) { Str1="SELECT COUNT(*) FROM $db_topics WHERE forum = 6 AND user = " link(onStrCat,3269780:doQuery,[]) link(Str2,9801105:Var2,[]) } Add(mysql_query,3269780,133,231) { link(onQuery,608112:doResult,[]) } Add(mysql_result,608112,182,231) { Index=0 link(onResult,6008926:doStrCat,[]) } Add(StrCat,6008926,231,231) { Str1="SELECT COUNT(*) FROM $db_topics WHERE forum = 7 AND user = " link(onStrCat,15184438:doQuery,[]) link(Str2,9801105:Var3,[(244,219)]) } Add(mysql_query,15184438,280,231) { link(onQuery,6444404:doResult,[]) } Add(mysql_result,6444404,329,231) { Index=0 } Add(GetDataEx,694205,49,123) { link(Data,6588356:Var2,[]) } Add(GetDataEx,9801105,91,214) { Angle=3 link(Data,11568126:Var3,[]) } Add(If_else,1189609,84,350) { Type=2 Op2=Integer(0) link(onTrue,10094955:doGet,[]) link(onFalse,4621702:doClear,[]) link(Op1,12699504:Get,[]) } Add(GlobalVar,7176492,84,273) { Name="udata" } Add(ArrayItem,12699504,84,301) { Name="rank" link(Array,7176492:Var,[]) } Add(Memory,4621702,182,350) { Extern=1 } Add(ArrayItem,10094955,135,350) { Name="email" link(onGet,4621702:doValue,[]) } Add(Copy,1421418,231,399) { CharCount=4 link(onCopy,7903040:doCompare,[]) } Add(ArrayItem,11192144,84,399) { Name="avatar" link(onGet,212116:doValue,[]) } Add(If_else,7903040,280,399) { Op2=String(http) link(onTrue,7059691:doData,[]) link(onFalse,11228884:doStrCat,[(317,412)(317,461)]) } Add(Memory,12798520,378,399) { Extern=1 } Add(If_else,10532480,182,399) { link(onTrue,1421418:doCopy,[]) link(onFalse,14335760:doData,[(222,412)(222,454)]) } Add(StrCat,11228884,329,455) { Str1="hf/tpl/avatars/" link(onStrCat,14249567:doWork3,[(368,461)]) link(Str2,8012356:Var3,[(342,436)]) } Add(GetDataEx,8012356,315,431) { Angle=3 link(Data,212116:Value,[(139,436)]) } Add(DoData,14335760,231,448) { Data=String(xx/none.ico) link(onEventData,14249567:doWork1,[(274,454)(274,380)(368,380)]) } Add(Memory,212116,133,399) { Extern=1 link(onData,10532480:doCompare,[]) } Add(DoData,7059691,329,399) { link(onEventData,14249567:doWork2,[]) link(Data,8012356:Var1,[(335,387)(321,387)]) } Add(HubEx,14249567,364,399) { link(onEvent,12798520:doValue,[]) } Add(FormatTime,16147657,131,448) { Mask="%d %b %Y %H:%M" link(onFormat,1038619:doValue,[]) } Add(ArrayItem,12446726,84,448) { Name="last_visit" link(onGet,16147657:doFormat,[]) } Add(Memory,1038619,182,448) { } Add(StrCat,16316829,84,504) { Str1="SELECT COUNT(*) FROM hiasm_sha_src WHERE user = " link(onStrCat,14739462:doQuery,[]) link(Str2,2163522:Var2,[]) } Add(mysql_query,14739462,133,504) { link(onQuery,4888682:doResult,[]) } Add(mysql_result,4888682,182,504) { Index=0 link(onResult,3280408:doStrCat,[]) } Add(GetDataEx,11568126,49,214) { link(Data,694205:Var2,[]) } Add(StrCat,3280408,231,504) { Str1="SELECT COUNT(*) FROM hiasm_sha_users WHERE user = " link(onStrCat,13123999:doQuery,[]) link(Str2,2163522:Var3,[(244,492)]) } Add(mysql_query,13123999,280,504) { link(onQuery,10868820:doResult,[]) } Add(mysql_result,10868820,329,504) { Index=0 } Add(GetDataEx,2163522,91,487) { Angle=3 link(Data,11568126:Var2,[(55,492)]) } END_SDK Add(Hub,879034,259,175) { link(onEvent1,11943322:doWork1,[(299,181)(299,132)]) link(onEvent2,12882217:doGet,[]) } Add(GetDataEx,5798163,378,53) { Angle=3 link(Data,4777309:Result,[(277,58)(277,221)(216,221)]) } Add(ArrayItem,829044,441,126) { Name="home" link(Array,2572006:Var2,[]) } Add(GetDataEx,9415701,483,102) { Angle=3 link(Data,2572006:Var3,[]) } Add(ArrayItem,15195497,483,126) { Name="icq" link(Array,9415701:Var2,[]) } Add(GetDataEx,2572006,441,102) { link(Data,5798163:Var3,[(447,58)]) } Add(ArrayItem,12120659,525,126) { Name="posts" link(Array,12217644:Var2,[]) } Add(ArrayItem,8261600,567,126) { Name="info" link(Array,2887529:Var2,[]) } Add(GetDataEx,12217644,525,102) { Angle=3 link(Data,9415701:Var3,[]) } Add(ArrayItem,7065512,609,126) { Name="user_id" link(Array,1203759:Var2,[]) } Add(GetDataEx,2887529,567,102) { Angle=3 link(Data,12217644:Var3,[]) } Add(StringBuilder,6166975,112,175) { Mask="SELECT u.* FROM $db_users u WHERE u.user_id = %user%" Args=#17:Mask=Маска строки|4:user| link(onBuild,971868:doQuery,[]) link(user,15359164:Var2,[]) } Add(mysql_query,971868,161,175) { link(onQuery,4777309:doFetchArray,[]) } Add(mysql_fetch_array,4777309,210,175) { link(onFetchArray,879034:doEvent,[]) } Add(GetDataEx,15359164,119,109) { link(Data,2802881:Data,[(125,65)(27,65)]) } Add(ArrayItem,9023871,651,126) { Name="note" link(Array,1203759:Var3,[(657,107)]) } Add(GetDataEx,1203759,609,102) { Angle=3 link(Data,2887529:Var3,[]) } Add(Inline,518251,63,175) { InlineCode=#40:global $db_users, $db_topics, $db_posts;| link(onInline,6166975:doBuild,[]) } END_SDK Add(Case,413877,140,56) { Value=Integer(47) link(onNextCase,10200255:doCase,[]) link(onTrue,3515262:doSaveProfile,[(180,69)(180,104)]) } Add(Vars,94195,91,112) { Name="u" Point(Get) } Add(Case,6653883,91,56) { Value=Integer(41) link(onNextCase,413877:doCase,[]) link(onTrue,14199507:doShowPM,[(131,69)(131,104)]) } Add(MultiElementEx,14199507,140,98) { @Hint=#25:Отправить ПМ=Отправить ПМ| CodeType=1 } BEGIN_SDK Add(EditMultiEx,8669873,21,21) { WorkCount=#8:doShowPM| Width=314 Height=179 link(doShowPM,6253830:doStrCat,[(39,27)(39,132)]) } Add(StringBuilder,1368971,203,126) { Mask="set\tpbody\tpm_body\t%uname%\t29\r\n" Args=#17:Mask=Маска строки|5:uname| link(onBuild,452976:doEcho,[]) } Add(Echo,452976,252,126) { } Add(mysql_result,2804780,154,126) { Index=0 link(onResult,1368971:doBuild,[]) } Add(StrCat,6253830,56,126) { Str1="SELECT name FROM $db_users WHERE user_id = " link(onStrCat,9507462:doQuery,[]) link(Str2,13215582:Result,[]) } Add(mysql_query,9507462,105,126) { link(onQuery,2804780:doResult,[]) } Add(Vars,8221470,56,42) { Name="u" Point(Get) } Add(StrInt,13215582,63,84) { link(Text,8221470:Get,[]) } END_SDK Add(MultiElementEx,3515262,189,98) { @Hint=#28:Сохранить профиль=Сохранение| CodeType=1 } BEGIN_SDK Add(EditMultiEx,12594297,21,21) { WorkCount=#13:doSaveProfile| Width=440 Height=270 link(doSaveProfile,269105:doWork1,[(35,27)(35,195)]) } Add(StringBuilder,832070,154,189) { Mask="UPDATE $db_users SET info = '%about%', email = '%mail%', home = '%www%', icq = '%icq%', note = '%note%', avatar = '%avatar%' WHERE user_id = %user%" Args=#17:Mask=Маска строки|5:about|4:mail|3:www|3:icq|4:user|4:note|6:avatar| link(onBuild,8893878:doExec,[(222,195)(222,202)]) link(about,8290211:Result,[(167,177)(118,177)]) link(mail,11607223:Result,[(174,177)(160,177)]) link(www,7174184:Result,[(181,177)(202,177)]) link(icq,15505299:Result,[(188,177)(244,177)]) link(user,12364106:Var2,[]) link(note,6570271:Result,[(202,177)(286,177)]) link(avatar,11347683:Result,[(209,177)(328,177)]) } Add(mysql_query,8893878,238,189) { link(onQuery,810795:doBuild,[]) } Add(Vars,14358713,112,42) { Name="about" } Add(CallFunc,888842,112,91) { Args=1 Name="cvt_text" link(Arg1,14358713:Post,[]) } Add(Vars,15397101,154,42) { Name="mail" } Add(CallFunc,12273572,154,91) { Args=1 Name="cvt_text" link(Arg1,15397101:Post,[]) } Add(Vars,4414907,196,42) { Name="www" } Add(CallFunc,3134146,196,91) { Args=1 Name="cvt_text" link(Arg1,4414907:Post,[]) } Add(Vars,2526410,238,42) { Name="icq" } Add(CallFunc,521059,238,91) { Args=1 Name="cvt_text" link(Arg1,2526410:Post,[]) } Add(Vars,11115175,364,42) { Name="u" Point(Get) } Add(MultiElementEx,810795,371,189) { @Hint=#19:Показ профиля=Показ| elink(9594407) link(Data,1748092:Var2,[]) } Add(GetDataEx,1748092,371,123) { link(Data,11115175:Get,[]) } Add(MultiElement,269105,49,189) { link(onEvent1,13813071:doCompare,[]) link(Data1,12364106:Var1,[(55,128)]) } BEGIN_SDK Add(EditMulti,1277820,17,17) { EventCount=1 WorkCount=1 DataCount=1 Width=272 Height=186 link(doWork1,12516778:doCompare,[(33,23)(33,146)]) } Add(If_else,12516778,49,140) { Op2=Integer(1) link(onTrue,8225419:doWork2,[]) link(onFalse,4388944:doCompare,[]) link(Op1,6555055:Get,[]) } Add(GlobalVar,4042823,49,49) { Name="udata" } Add(ArrayItem,6555055,49,84) { Name="level" link(Array,13020617:Var2,[]) } Add(ArrayItem,11483735,98,84) { Name="user_id" link(Array,13020617:Var3,[(104,72)]) } Add(ChanelToIndex,16351701,224,133) { link(onIndex,1277820:onEvent1,[(272,139)(272,23)]) } Add(If_else,4388944,98,147) { link(onTrue,8113996:doCompare,[]) link(onFalse,6452248:doWork3,[(140,160)(140,189)(214,189)]) link(Op1,2478856:Var2,[]) link(Op2,1277820:Data1,[(111,126)(23,126)]) } Add(GetDataEx,13020617,49,67) { link(Data,4042823:Var,[]) } Add(HubEx,8225419,203,140) { link(onEvent,16351701:doWork2,[]) } Add(If_else,8113996,147,147) { Type=5 Op2=Integer(-1) link(onTrue,8225419:doWork3,[(207,153)]) link(onFalse,6452248:doWork2,[]) link(Op1,2478856:Var3,[(153,135)]) } Add(HubEx,6452248,210,154) { Angle=3 link(onEvent,16351701:doWork1,[(214,139)]) } Add(GetDataEx,2478856,98,130) { link(Data,11483735:Get,[]) } END_SDK Add(If_else,13813071,98,189) { link(onTrue,832070:doBuild,[]) link(onFalse,5146059:doEcho,[(142,202)(142,237)]) } Add(Echo,5146059,154,231) { Message="mes\tНе хватает прав для выполнения операции\r\n" } Add(GetDataEx,12364106,189,123) { Angle=1 link(Data,1748092:Var1,[]) } Add(Vars,11505521,280,42) { Name="note" } Add(CallFunc,2886423,280,91) { Args=1 Name="cvt_text" link(Arg1,11505521:Post,[]) } Add(Vars,8261235,322,42) { Name="avatar" } Add(CallFunc,14860466,322,91) { Args=1 Name="cvt_text" link(Arg1,8261235:Post,[]) } Add(HtmlSpecialChars,11347683,322,133) { link(Text,14860466:Result,[]) } Add(HtmlSpecialChars,6570271,280,133) { link(Text,2886423:Result,[]) } Add(HtmlSpecialChars,15505299,238,133) { link(Text,521059:Result,[]) } Add(HtmlSpecialChars,7174184,196,133) { link(Text,3134146:Result,[]) } Add(HtmlSpecialChars,11607223,154,133) { link(Text,12273572:Result,[]) } Add(HtmlSpecialChars,8290211,112,133) { link(Text,888842:Result,[]) } END_SDK Add(Case,10200255,189,56) { Value=Integer(54) link(onNextCase,13690204:onEvent1,[(273,62)(273,16)]) link(onTrue,13600945:doSetPassword,[(229,69)(229,104)]) } Add(MultiElementEx,13600945,238,98) { @Hint=#12:Смена пароля| link(pass,14639518:Post,[]) } BEGIN_SDK Add(EditMultiEx,13797599,21,21) { WorkCount=#13:doSetPassword| DataCount=#4:pass| Width=181 link(doSetPassword,12201828:doBuild,[(39,27)(39,139)]) } Add(StringBuilder,12201828,56,133) { Mask="UPDATE hiasm_users SET pass = md5('%pass%') WHERE user_id = %user% " Args=#17:Mask=Маска строки|4:pass|4:user| link(onBuild,11573749:doExec,[(100,139)(100,146)]) link(pass,13797599:pass,[(69,115)(27,115)]) link(user,4955655:Get,[]) } Add(GlobalVar,12736411,70,42) { Name="udata" } Add(ArrayItem,4955655,70,77) { Name="user_id" link(Array,12736411:Var,[]) } Add(mysql_query,11573749,112,133) { } END_SDK Add(Vars,14639518,238,56) { Name="pass" } END_SDK Add(MultiElement,4682611,707,161) { @Hint=#7:autorun| CodeType=1 link(onEvent1,13007071:doWork1,[]) AddHint(71,-130,57,14,@Hint) } BEGIN_SDK Add(EditMulti,11631186,14,14) { EventCount=1 WorkCount=1 Width=566 Height=550 link(doWork1,5982171:doCase,[(32,20)(32,76)]) } Add(Case,5982171,49,70) { Value=Integer(36) link(onNextCase,11631186:onEvent1,[(295,76)(295,20)]) link(onTrue,11439295:doEvent,[(91,83)(91,125)]) } Add(MultiElement,11370549,161,161) { @Hint=#15:очистка корзины| CodeType=1 AddHint(46,6,102,13,@Hint) } BEGIN_SDK Add(EditMulti,9052060,10,10) { WorkCount=1 Width=370 Height=151 link(doWork1,15423354:doRand,[(26,16)(26,69)]) } Add(MultiElementEx,7041337,287,63) { @Hint=#15:Удаление топика| elink(2465331) } Add(mysql_result,6387207,189,63) { Index=0 link(onResult,3976691:doEvent,[]) } Add(mysql_query,6590874,140,63) { SQL="SELECT t.topic_id FROM $db_forums f, $db_topics t, $db_posts p WHERE f.type = 4 AND t.forum = f.forum_id AND p.post_id = t.last_post ORDER BY p.time LIMIT 1" link(onQuery,6387207:doResult,[]) } Add(Rand,15423354,42,63) { Max=20 link(onRand,8149792:doCompare,[]) } Add(If_else,8149792,91,63) { Op2=Integer(15) link(onTrue,6590874:doQuery,[]) } Add(Hub,3976691,238,63) { link(onEvent1,7041337:doRemoveTopic,[]) link(onEvent2,5570148:doStrCat,[(278,76)(278,118)]) } Add(StrCat,5570148,287,112) { Str1="Delete topic: " link(onStrCat,4666267:doPrintLine,[]) } Add(MultiElementEx,4666267,336,112) { elink(2497811) } END_SDK Add(Hub,11439295,105,119) { OutCount=8 link(onEvent1,1564425:doWork1,[]) link(onEvent2,11370549:doWork1,[(140,132)(140,167)]) link(onEvent3,11454811:doWork1,[(140,139)(140,209)]) link(onEvent4,11641573:doWork1,[(140,146)(140,251)]) link(onEvent5,16414959:doExec,[(140,153)(140,293)]) link(onEvent6,9327830:doFormat,[(140,160)(140,349)]) link(onEvent7,11645988:doWork1,[(140,167)(140,398)]) link(onEvent8,5119893:doFormat,[(140,174)(140,454)]) } Add(mysql_query,13409038,427,161) { } Add(StringBuilder,12232370,371,161) { Mask="INSERT INTO hiasm_rm_ban(ip) VALUES('%ip%')" Args=#17:Mask=Маска строки|2:ip| link(onBuild,13409038:doExec,[(415,167)(415,174)]) link(ip,13837111:Server,[(384,149)(391,149)]) } Add(MultiElement,11454811,161,203) { @Hint=#8:sheduler| Name="check_timers" AddHint(47,8,55,13,@Hint) } BEGIN_SDK Add(EditMulti,7229254,10,10) { WorkCount=1 Width=538 Height=186 link(doWork1,518251:doInline,[(29,16)(29,76)]) } Add(mysql_query,9445901,98,70) { SQL="SELECT id, type, object FROM $db_timer WHERE UNIX_TIMESTAMP() > time + hours" link(onQuery,11437771:doNumRows,[]) } Add(mysql_fetch_row,10553968,245,70) { link(onFetchRow,4572002:doEvent,[]) link(Query,9445901:Result,[(251,58)(188,58)(188,115)(104,115)]) } Add(MultiElement,10979359,469,77) { @Hint=#10:remove ban| CodeType=1 link(Data1,10553968:Result,[(475,61)(289,61)(289,112)(251,112)]) } BEGIN_SDK Add(EditMulti,218535,17,17) { WorkCount=1 DataCount=1 Width=153 Height=158 link(doWork1,16378294:doBuild,[(33,23)(33,139)]) } Add(StringBuilder,16378294,56,133) { Mask="DELETE FROM $db_ban WHERE id = %id%" Args=#17:Mask=Маска строки|2:id| link(onBuild,7768470:doExec,[(96,139)(96,146)]) link(id,6447863:Item,[(69,121)(62,121)]) } Add(ArrayRead,6447863,56,77) { Index=2 link(Array,218535:Data1,[(62,43)(23,43)]) } Add(mysql_query,7768470,105,133) { } END_SDK Add(IndexToChanel,7224124,413,70) { link(onEvent2,10979359:doWork1,[]) } Add(ArrayRead,9272429,357,70) { Index=1 link(onRead,7224124:doEvent,[]) } Add(Hub,4572002,301,70) { link(onEvent1,9272429:doRead,[]) link(onEvent2,3031086:doRead,[(345,83)(345,139)]) } Add(ArrayRead,3031086,357,133) { Index=0 link(onRead,7570858:doStrCat,[]) } Add(StrCat,7570858,413,133) { Str1="DELETE FROM $db_timer WHERE id = " link(onStrCat,11279531:doExec,[(457,139)(457,146)]) } Add(mysql_query,11279531,469,133) { } Add(Inline,518251,48,70) { InlineCode=#26:global $db_timer, $db_ban;| link(onInline,9445901:doQuery,[]) } Add(mysql_num_rows,11437771,147,70) { link(onNumRows,3138096:doCompare,[]) } Add(If_else,3138096,196,70) { link(onTrue,10553968:doFetchRow,[]) } END_SDK Add(MultiElement,1564425,161,119) { @Hint=#12:Права админа| CodeType=1 AddHint(45,7,88,13,@Hint) } BEGIN_SDK Add(EditMulti,2895540,10,10) { WorkCount=1 Width=286 Height=228 link(doWork1,9012316:doCompare,[(30,16)(30,104)]) } Add(If_else,9012316,49,98) { Op1=String(12.12.1.4) link(onTrue,3309149:doData,[]) link(onFalse,1989169:doEvent,[(93,111)(93,160)]) link(Op2,16033325:Var2,[]) } Add(Vars,13837111,49,49) { Name="REMOTE_ADDR" Point(Server) } Add(GlobalVar,10677905,161,63) { Name="udata" } Add(ArrayItem,16097333,161,98) { Name="level" link(onGet,15830035:doStrCat,[]) link(Array,10677905:Var,[]) } Add(DoData,3309149,105,98) { Data=Integer(1) link(onEventData,16097333:doSet,[(149,104)(149,111)]) } Add(MultiElementEx,2497811,259,98) { @IsLib=True } BEGIN_SDK Add(EditMultiEx,13811299,21,21) { WorkCount=#11:doPrintLine| DataCount=#4:Text| Width=160 Height=116 link(doPrintLine,14410211:doOpen,[(31,27)(31,97)]) } Add(File,14410211,42,91) { FileName="log.txt" Mode="a" AutoClose=1 link(onOpen,12989094:doWrite,[]) } Add(FileWrite,12989094,91,91) { link(Text,12309447:Result,[(104,83)(97,83)]) } Add(StrCat,12309447,91,42) { Str2="\r\n" link(Str1,13811299:Text,[(97,32)(27,32)]) } END_SDK Add(StrCat,15830035,210,98) { Str1="Set admin status: " link(onStrCat,9184675:doWork2,[]) link(Str2,7555897:Var3,[(223,86)]) } Add(GetDataEx,16033325,56,81) { link(Data,13837111:Server,[]) } Add(HubEx,9184675,245,98) { link(onEvent,2497811:doPrintLine,[]) } Add(StrCat,11266990,161,154) { Str1="Attempt!!: " link(onStrCat,9184675:doWork3,[(249,160)]) link(Str2,7555897:Var2,[(174,140)(118,140)]) } Add(GetDataEx,7555897,112,81) { Angle=3 link(Data,16033325:Var3,[]) } Add(Hub,1989169,105,154) { link(onEvent1,11266990:doStrCat,[]) link(onEvent2,2916093:doDie,[(149,167)(149,202)]) } Add(Die,2916093,161,196) { Text="access denide" } END_SDK Add(Vars,13837111,378,105) { Name="REMOTE_ADDR" Point(Server) } Add(MultiElement,11641573,161,245) { @Hint=#19:Перемещение топиков| CodeType=1 AddHint(47,7,132,13,@Hint) } BEGIN_SDK Add(EditMulti,9052060,10,10) { WorkCount=1 Width=384 link(doWork1,15423354:doRand,[(30,16)(30,69)]) } Add(MultiElementEx,5709827,294,63) { @Hint=#15:Удаление топика| elink(2465331) } Add(mysql_result,6387207,196,63) { Index=0 link(onResult,5049555:doEvent,[]) } Add(mysql_query,6590874,147,63) { SQL="SELECT t.topic_id FROM $db_topics t WHERE t.type = 4 LIMIT 1" link(onQuery,6387207:doResult,[]) } Add(Rand,15423354,49,63) { Max=30 link(onRand,8149792:doCompare,[]) } Add(If_else,8149792,98,63) { Op2=Integer(15) link(onTrue,6590874:doQuery,[]) } Add(Hub,5049555,245,63) { OutCount=3 link(onEvent1,5709827:doRemoveTopic,[]) link(onEvent2,2257559:doStrCat,[(285,76)(285,118)]) link(onEvent3,5570148:doStrCat,[(285,83)(285,167)]) } Add(StrCat,2257559,294,112) { Str1="UPDATE $db_topics SET type = 0 WHERE topic_id = " link(onStrCat,9314751:doExec,[(334,118)(334,125)]) link(Str2,6387207:Result,[(307,104)(202,104)]) } Add(mysql_query,9314751,343,112) { } Add(MultiElementEx,4784355,343,161) { elink(2497811) } Add(StrCat,5570148,294,161) { Str1="Change state for remove: " link(onStrCat,4784355:doPrintLine,[]) } END_SDK Add(FormatTime,9327830,161,343) { Mask="%d %b %Y %H:%M" link(onFormat,15759390:doStrCat,[]) link(Time,9327830:ServerTime,[(167,332)(157,332)(157,387)(174,387)]) } Add(StrCat,15759390,217,343) { Str1="Sheluder at " link(onStrCat,15078075:doPrintLine,[]) } Add(MultiElementEx,15078075,273,343) { elink(2497811) } Add(MultiElementEx,16414959,161,287) { @Hint=#24:Чистка sessions и ipstat| CodeType=1 AddHint(46,6,132,13,@Hint) } BEGIN_SDK Add(EditMultiEx,3102319,21,21) { WorkCount=#6:doExec| link(doExec,7267010:doExec,[(35,27)(35,62)]) } Add(mysql_query,7267010,49,49) { SQL="DELETE FROM $db_sessions WHERE UNIX_TIMESTAMP() > time + 60*60" link(onQuery,15102212:doExec,[(89,55)(89,85)(37,85)(37,111)]) AddHint(45,-5,188,39,SQL) } Add(mysql_query,15102212,49,98) { SQL="DELETE FROM hiasm_ipstat WHERE UNIX_TIMESTAMP() > time + 60*60" AddHint(45,1,199,26,SQL) } END_SDK Add(MultiElement,11645988,161,392) { @Hint=#16:зачисление денег| CodeType=1 AddHint(49,7,106,13,@Hint) } BEGIN_SDK Add(EditMulti,15286897,21,21) { WorkCount=1 Width=384 Height=95 link(doWork1,12968062:doQuery,[(28,27)(28,55)]) } Add(mysql_query,12968062,35,49) { SQL="select u.name, p.user, sum(r.score) as total from hiasm_prating r, hiasm_posts p, hiasm_users u where p.post_id = r.post_id and r.time > UNIX_TIMESTAMP()-3600*24 and u.user_id = p.user and u.level = 0 group by p.user order by total desc limit 1" link(onQuery,13135061:doNumRows,[]) } Add(mysql_num_rows,13135061,84,49) { link(onNumRows,13687931:doCompare,[]) } Add(If_else,13687931,133,49) { link(onTrue,4674687:doFetchArray,[]) } Add(mysql_fetch_array,4674687,182,49) { link(onFetchArray,15749002:doGet,[]) link(Query,12968062:Result,[(188,37)(123,37)(123,88)(41,88)]) } Add(ArrayItem,15749002,231,49) { Name="user" link(onGet,8465714:doStrCat,[]) } Add(StrCat,8465714,280,49) { Str1="UPDATE hiasm_users SET money = money + 2 WHERE user_id = " link(onStrCat,13109230:doExec,[(320,55)(320,62)]) } Add(mysql_query,13109230,329,49) { } END_SDK Add(mysql_query,10509573,308,441) { SQL="delete from hiasm_new_posts where post_id in (select post_id from hiasm_posts where time < UNIX_TIMESTAMP() - 7*24*3600)" AddHint(47,-13,200,52,SQL) } Add(FormatTime,5119893,161,448) { Mask="%H" link(onFormat,10021528:doCompare,[]) link(Time,5119893:ServerTime,[(167,437)(157,437)(157,492)(174,492)]) } Add(Hub,7739178,273,448) { link(onEvent1,10509573:doExec,[]) link(onEvent2,15136376:doExec,[(297,461)(297,517)]) } Add(If_else,10021528,210,448) { Op2=Integer(10) link(onTrue,7739178:doEvent,[]) } Add(mysql_query,15136376,308,504) { SQL="UPDATE hiasm_data SET value = (SELECT SUM(size) FROM hiasm_attach) WHERE id = 1" AddHint(48,-4,198,39,SQL) } END_SDK Add(MultiElement,13007071,756,161) { @Hint=#4:баны| CodeType=1 link(onEvent1,15432379:doWork1,[]) AddHint(21,-106,44,14,@Hint) } BEGIN_SDK Add(EditMulti,11631186,10,10) { EventCount=1 WorkCount=1 Width=384 Height=214 link(doWork1,5982171:doCase,[(26,16)(26,55)]) } Add(Case,5982171,42,49) { Value=Integer(37) link(onNextCase,7111111:doCase,[]) link(onTrue,8316196:doEvent,[(86,62)(86,139)]) } Add(Echo,9831815,147,133) { Message="set\ttext\tf_ban_body\r\n" } Add(Hub,8316196,98,133) { link(onEvent1,9831815:doEcho,[]) link(onEvent2,10608559:doWork2,[(138,146)(138,188)]) } Add(MultiElementEx,1334580,189,182) { link(Sort,8894138:Result,[]) link(Start,12233453:Result,[(202,174)(237,174)]) } BEGIN_SDK Add(EditMultiEx,7040546,21,21) { WorkCount=#11:doViewUsers| DataCount=#4:Sort|5:Start| Width=853 Height=221 link(doViewUsers,518251:doInline,[(41,27)(41,118)]) } Add(StringBuilder,5013948,301,112) { Mask="SELECT b.id, b.ip, IF(b.descr = '', ' ', b.descr) AS descr, u.name, u.user_id, t.hours, (t.time + t.hours - UNIX_TIMESTAMP()) AS lost FROM $db_ban b, $db_users u, $db_timer t WHERE b.author = u.user_id AND b.id = t.object ORDER BY %sort% LIMIT %start%, 30" Args=#17:Mask=Маска строки|4:sort|5:start| link(onBuild,10746269:doQuery,[]) link(start,10894510:Var1,[(321,100)]) } Add(StrArray,7690552,252,56) { Strings=#4:b.id|8:b.author|4:b.ip|7:t.hours| } Add(Hub,5607339,154,112) { link(onEvent1,13113281:doEcho,[]) link(onEvent2,10763079:doQuery,[(199,125)(199,181)]) } Add(ArrayRead,3786072,252,112) { link(onRead,5013948:doBuild,[]) link(Array,7690552:Array,[]) link(Index,3131459:Var1,[(265,93)]) } Add(Echo,13113281,203,112) { Message="fadd\t\tf_ban_begin\r\n" link(onEcho,3786072:doRead,[]) } Add(mysql_query,10763079,203,175) { SQL="SELECT count(*) FROM $db_ban" link(onQuery,12651989:doResult,[]) } Add(mysql_query,10746269,350,112) { link(onQuery,9890175:doNumRows,[]) } Add(mysql_fetch_array,853873,497,112) { link(onFetchArray,15045349:doEvent,[]) link(Query,10746269:Result,[(503,106)(442,106)(442,156)(356,156)]) } Add(StringBuilder,12743305,602,112) { Mask="fadd\t\tf_ban_user\t%id%\t%ip%\t%descr%\t%name%\t%user_id%\t%hours%\t%start%\t%sort%\t%lost%\r\n" Args=#17:Mask=Маска строки|2:id|2:ip|5:descr|4:name|7:user_id|5:start|4:sort|5:hours|4:lost| link(onBuild,4128431:doEcho,[]) link(id,12238891:Get,[]) link(ip,13801235:Get,[(622,100)(664,100)]) link(descr,3027502:Get,[(629,100)(713,100)]) link(name,14122988:Get,[(636,100)(762,100)]) link(user_id,9218728:Get,[(643,100)(811,100)]) link(start,10894510:Var3,[(650,100)]) link(sort,3131459:Var3,[(657,93)]) link(hours,14235830:Var1,[(664,100)(552,100)]) link(lost,14235830:Var2,[(671,100)(559,100)]) } Add(Echo,8529584,497,175) { Message="fadd\t\tf_ban_end\r\nflush\tf_b_body\r\n" } Add(mysql_num_rows,9890175,399,112) { link(onNumRows,429423:doFor,[]) } Add(For,429423,448,112) { link(onEvent,853873:doFetchArray,[]) link(onStop,8529584:doEcho,[(491,125)(491,181)]) } Add(ArrayItem,12238891,609,56) { Name="id" link(Array,11911215:Var2,[]) } Add(mysql_result,12651989,252,175) { Index=0 link(onResult,2780796:doBuild,[]) } Add(Inline,518251,56,112) { InlineCode=#37:global $db_ban, $db_users, $db_timer;| link(onInline,3418213:doPrint,[]) } Add(Echo,4128431,693,112) { } Add(ArrayItem,13801235,658,56) { Name="ip" link(Array,12497438:Var2,[]) } Add(GetDataEx,11911215,609,39) { Angle=3 link(Data,7383234:Var3,[]) } Add(MultiElement,14235830,546,56) { CodeType=1 link(Data1,7383234:Var2,[]) } BEGIN_SDK Add(EditMulti,9393407,10,10) { WorkCount=1 DataCount=1 VarCount=2 Width=356 Height=256 link(doWork1,6421181:doEvent,[(22,16)(22,41)]) link(Var1,9801140:Result,[(16,193)(251,193)]) link(Var2,760893:Result,[(23,240)(251,240)]) } Add(ArrayItem,827805,98,35) { Name="hours" link(onGet,7153582:doEvent,[]) } Add(FormatTime,10516409,196,35) { Mask="%H:%M:%S" } Add(ArrayItem,13736864,98,133) { Name="lost" link(onGet,6419019:doEvent,[]) } Add(Hub,6421181,42,35) { link(onEvent1,827805:doGet,[]) link(onEvent2,13736864:doGet,[(86,48)(86,139)]) } Add(MathParse,15691385,196,84) { DataCount=1 MathStr="(int)(%1 / (3600*24))" link(onResult,9801140:doBuild,[]) } Add(StringBuilder,9801140,245,84) { Mask="%day%д %time%" Args=#17:Mask=Маска строки|3:day|4:time| link(time,10516409:Result,[(265,76)(202,76)]) } Add(Hub,7153582,147,35) { link(onEvent1,10516409:doFormat,[]) link(onEvent2,15691385:doCalc,[(187,48)(187,90)]) } Add(FormatTime,2191029,196,133) { Mask="%H:%M:%S" } Add(MathParse,14990219,196,182) { DataCount=1 MathStr="(int)(%1 / (3600*24))" link(onResult,760893:doBuild,[]) } Add(StringBuilder,760893,245,182) { Mask="%day%д %time%" Args=#17:Mask=Маска строки|3:day|4:time| link(time,2191029:Result,[(265,174)(202,174)]) } Add(Hub,6419019,147,133) { link(onEvent1,2191029:doFormat,[]) link(onEvent2,14990219:doCalc,[(187,146)(187,188)]) } END_SDK Add(GetDataEx,12497438,658,39) { Angle=3 link(Data,11911215:Var3,[]) } Add(ArrayItem,3027502,707,56) { Name="descr" link(Array,7662803:Var2,[]) } Add(GetDataEx,10894510,336,95) { link(Data,7040546:Start,[(342,37)(34,37)]) } Add(ArrayItem,14122988,756,56) { Name="name" link(Array,14271096:Var2,[]) } Add(GetDataEx,7662803,707,39) { Angle=3 link(Data,12497438:Var3,[]) } Add(ArrayItem,9218728,805,56) { Name="user_id" link(Array,13658365:Var2,[]) } Add(GetDataEx,14271096,756,39) { Angle=3 link(Data,7662803:Var3,[]) } Add(GetDataEx,3131459,287,88) { link(Data,7040546:Sort,[(293,45)(27,45)]) } Add(StringBuilder,2780796,301,175) { Mask="call\tmake_pages\tforum_serv.php?q=38&sort=%sort%\t%start%\t%count%\t30" Args=#17:Mask=Маска строки|5:count|4:sort|5:start| link(onBuild,1342417:doEcho,[]) link(sort,3131459:Var2,[(321,152)(293,152)]) link(start,10894510:Var2,[(328,152)(342,152)]) } Add(InfoTip,1641633,194,161) { Info=#5:Pages| Width=251 Height=53 } Add(Echo,6069297,399,175) { Message="\r\nflush\tpages\r\n" } Add(Echo,1342417,350,175) { link(onEcho,6069297:doEcho,[]) } Add(GetDataEx,13658365,805,39) { Angle=3 link(Data,14271096:Var3,[]) } Add(Hub,15045349,546,112) { link(onEvent1,14235830:doWork1,[(590,118)(590,92)(533,92)(533,62)]) link(onEvent2,12743305:doBuild,[(590,125)(590,118)]) } Add(GetDataEx,7383234,546,39) { Angle=3 link(Data,853873:Result,[(525,44)(525,156)(503,156)]) } Add(CallFunc,3418213,105,112) { Name="check_timers" link(onPrint,5607339:doEvent,[]) } END_SDK Add(Vars,10218786,182,91) { Name="sort" Point(Get) } Add(Vars,14964123,224,91) { Name="s" Point(Get) } Add(StrInt,12233453,231,133) { link(Text,14964123:Get,[]) } Add(StrInt,8894138,189,133) { link(Text,10218786:Get,[]) } Add(HubEx,10608559,161,182) { link(onEvent,1334580:doViewUsers,[]) } Add(Case,7111111,91,49) { Value=Integer(38) link(onNextCase,16678898:doCase,[]) link(onTrue,10608559:doWork1,[(165,62)]) } Add(Case,16678898,259,49) { Value=Integer(39) link(onNextCase,15650683:doCase,[]) link(onTrue,9506436:doRemoveUser,[(299,62)(299,97)]) } Add(MultiElementEx,9506436,308,91) { CodeType=1 link(onUpdate,10608559:doWork3,[(345,97)(345,204)(165,204)]) } BEGIN_SDK Add(EditMultiEx,5209234,21,21) { WorkCount=#12:doRemoveUser| EventCount=#8:onUpdate| Width=223 Height=214 link(doRemoveUser,7390070:doCompare,[(39,27)(39,146)]) } Add(Vars,14964123,119,49) { Name="b" Point(Get) } Add(StrInt,12233453,126,91) { link(Text,14964123:Get,[]) } Add(StrCat,12892278,119,140) { Str1="DELETE FROM $db_ban WHERE id = " link(onStrCat,11646631:doExec,[(159,146)(159,153)]) link(Str2,12233453:Result,[]) } Add(If_else,7390070,56,140) { Op2=Integer(1) link(onTrue,12892278:doStrCat,[]) link(onFalse,10632643:doEcho,[(104,153)(104,195)]) link(Op1,4955655:Get,[]) } Add(GlobalVar,12736411,56,56) { Name="udata" } Add(ArrayItem,4955655,56,91) { Name="level" link(Array,12736411:Var,[]) } Add(mysql_query,11646631,168,140) { link(onQuery,5209234:onUpdate,[(222,146)(222,27)]) } Add(Echo,10632643,119,189) { Message="mes\tНедостаточно прав для выполнения этой операции\r\n" } END_SDK Add(Case,15650683,308,49) { Value=Integer(40) link(onNextCase,11631186:onEvent1,[(367,55)(367,16)]) link(onTrue,2843835:doAddBan,[(348,62)(348,97)]) } Add(MultiElementEx,2843835,357,91) { CodeType=1 } BEGIN_SDK Add(EditMultiEx,376813,21,21) { WorkCount=#8:doAddBan| Width=279 Height=221 link(doAddBan,1112372:doCompare,[(31,27)(31,153)]) } Add(StringBuilder,1747366,98,147) { Mask="INSERT INTO $db_ban(ip, descr, author) VALUES('%ip%', '%info%', %user%)" Args=#17:Mask=Маска строки|4:user|2:ip|4:info| link(onBuild,11895324:doExec,[(138,153)(138,160)]) link(user,4110520:Get,[(111,135)(90,135)]) link(ip,11716831:Post,[]) link(info,888842:Result,[(125,135)(167,135)]) } Add(If_else,1112372,42,147) { Type=2 Op2=Integer(1) link(onTrue,1747366:doBuild,[]) link(onFalse,9163438:doEcho,[(86,160)(86,202)]) link(Op1,13648081:Get,[]) } Add(ArrayItem,13648081,42,91) { Name="rank" link(Array,5579240:Var2,[]) } Add(GlobalVar,8455189,42,42) { Name="udata" } Add(Echo,9163438,98,196) { Message="mes\tНе хватает прав для внесения изменений в список банов\r\n" } Add(mysql_query,11895324,147,147) { Point(LastInsertId) link(onQuery,1338007:doBuild,[]) } Add(StringBuilder,1338007,196,147) { Mask="INSERT INTO $db_timer(type, object, hours, time) VALUES(1, %obj%, %hours%*3600, UNIX_TIMESTAMP())" Args=#17:Mask=Маска строки|3:obj|5:hours| link(onBuild,15642018:doExec,[(236,153)(236,160)]) link(obj,11895324:LastInsertId,[(209,135)(185,135)(185,191)(160,191)]) link(hours,8726542:Post,[]) } Add(mysql_query,15642018,245,147) { } Add(Vars,8726542,210,42) { Name="time" } Add(Vars,16528430,161,42) { Name="info" } Add(Vars,11716831,112,42) { Name="ip" } Add(CallFunc,888842,161,91) { Args=1 Name="cvt_text" link(Arg1,16528430:Post,[]) } Add(ArrayItem,4110520,84,91) { Name="user_id" link(Array,5579240:Var3,[(90,79)]) } Add(GetDataEx,5579240,42,74) { link(Data,8455189:Var,[]) } END_SDK END_SDK Add(MultiElement,15432379,805,161) { @Hint=#11:Трата денег| CodeType=1 link(onEvent1,6171215:doWork1,[]) AddHint(-29,-82,82,14,@Hint) } BEGIN_SDK Add(EditMulti,10176544,21,21) { EventCount=1 WorkCount=1 link(doWork1,15650683:doCase,[(31,27)(31,62)]) } Add(Case,15650683,42,56) { Value=Integer(53) link(onNextCase,10176544:onEvent1,[(198,62)(198,27)]) link(onTrue,6985012:doRunRocket,[(86,69)(86,160)]) } Add(MultiElementEx,6985012,98,154) { @Hint=#11:Пуск ракеты| link(ip,10612791:Result,[]) } BEGIN_SDK Add(EditMultiEx,2353980,21,21) { WorkCount=#11:doRunRocket| DataCount=#2:ip| Width=832 Height=256 link(doRunRocket,2050576:doEvent,[(35,27)(35,69)]) } Add(GlobalVar,7869360,126,70) { Name="udata" } Add(ArrayItem,3996497,126,105) { Name="user_id" link(Array,7869360:Var,[]) } Add(StrCat,9665913,119,161) { Str1="SELECT money, IF(rating < 1, 1, rating) AS rating, (rank + 1) AS rank, IF(level = 0, 1, 10) AS level FROM hiasm_users WHERE user_id = " link(onStrCat,13370455:doQuery,[]) link(Str2,11219430:Var2,[]) } Add(mysql_query,13370455,168,161) { link(onQuery,3973557:doFetchArray,[]) } Add(If_else,8911526,315,161) { Type=2 Op2=Integer(2) link(onTrue,2575243:doEvent,[]) link(onFalse,11648449:doEcho,[(359,174)(359,223)]) } Add(StrCat,12514901,427,161) { Str1="UPDATE hiasm_users SET money = money - 3 WHERE user_id = " link(onStrCat,11832722:doExec,[(471,167)(471,174)]) link(Str2,4058512:Var3,[(440,149)]) } Add(mysql_query,11832722,483,161) { link(onQuery,206896:doCalc,[(534,167)(534,139)]) } Add(GetDataEx,11219430,126,144) { link(Data,3996497:Get,[]) } Add(StringBuilder,4483137,434,210) { Mask="INSERT INTO hiasm_ban(ip, descr, author) VALUES('%ip%', 'Прямое попадание ракетой лишает его жизни на некоторое время...', %user%)" Args=#17:Mask=Маска строки|2:ip|4:user| link(onBuild,2645900:doExec,[(478,216)(478,223)]) link(ip,10794449:Get,[]) link(user,4058512:Var2,[(454,200)(363,200)]) } Add(Hub,2575243,371,161) { link(onEvent1,12514901:doStrCat,[]) link(onEvent2,4483137:doBuild,[(415,174)(415,216)]) } Add(GetDataEx,4058512,357,144) { Angle=3 link(Data,11219430:Var3,[]) } Add(StringBuilder,1338007,539,210) { Mask="INSERT INTO hiasm_timer(type, object, hours, time) VALUES(1, %obj%, %hours%, UNIX_TIMESTAMP())" Args=#17:Mask=Маска строки|3:obj|5:hours| link(onBuild,15642018:doExec,[(579,216)(579,223)]) link(obj,2645900:LastInsertId,[(552,198)(528,198)(528,254)(503,254)]) link(hours,206896:Result,[]) } Add(mysql_query,15642018,588,210) { } Add(mysql_query,2645900,490,210) { Point(LastInsertId) link(onQuery,1338007:doBuild,[]) } Add(Echo,11648449,371,217) { Message="mes\tНедостаточно средств.\r\n" } Add(Hub,2050576,49,63) { link(onEvent1,9536308:doStrCat,[]) link(onEvent2,9665913:doStrCat,[(100,76)(100,167)]) } Add(StrCat,9536308,182,63) { Str1="SELECT p.ip, IF(u.rating < 1, 1, u.rating) AS rating, (u.rank + 1) AS rank, IF(u.level = 0, 1, 10) AS level FROM hiasm_posts p, hiasm_users u WHERE u.user_id = p.user AND p.post_id = " link(onStrCat,3816279:doQuery,[]) link(Str2,2353980:ip,[(195,42)(27,42)]) } Add(mysql_query,3816279,231,63) { link(onQuery,7580703:doNumRows,[]) } Add(If_else,10109276,329,63) { link(onTrue,16702274:doFetchArray,[]) link(onFalse,2627348:doDie,[]) } Add(mysql_fetch_array,16702274,378,63) { link(Query,3816279:Result,[(384,44)(322,44)(322,107)(237,107)]) } Add(Die,2627348,427,70) { Text="mes\tОшибка\r\n" } Add(ArrayItem,10794449,441,112) { Name="ip" link(Array,8396457:Var3,[(447,107)]) } Add(mysql_fetch_array,3973557,217,161) { link(onFetchArray,5565059:doGet,[]) } Add(MathParse,206896,553,133) { DataCount=6 MathStr="2000 * %1 * %2 * %3 / (%4 * %5 * %6)" link(onResult,3153681:doEcho,[]) link(X1,3960748:Get,[]) link(X2,14444667:Get,[(566,121)(608,121)]) link(X3,10728824:Get,[(573,121)(657,121)]) link(X4,10742921:Get,[(580,121)(706,121)]) link(X5,15962416:Get,[(587,121)(755,121)]) link(X6,10726132:Get,[(594,121)(804,121)]) } Add(ArrayItem,3960748,553,77) { Name="rating" link(Array,11221805:Var2,[]) } Add(ArrayItem,14444667,602,77) { Name="rank" link(Array,1376140:Var2,[]) } Add(ArrayItem,10728824,651,77) { Name="level" link(Array,1376140:Var3,[(657,58)]) } Add(GetDataEx,11221805,553,53) { Angle=3 link(Data,3973557:Result,[(420,58)(420,205)(223,205)]) } Add(GetDataEx,1376140,602,53) { Angle=3 link(Data,11221805:Var3,[]) } Add(ArrayItem,10742921,700,77) { Name="rating" link(Array,11118687:Var2,[]) } Add(ArrayItem,15962416,749,77) { Name="rank" link(Array,9394776:Var2,[]) } Add(ArrayItem,10726132,798,77) { Name="level" link(Array,9394776:Var3,[(804,51)]) } Add(GetDataEx,11118687,700,46) { Angle=3 link(Data,8396457:Var1,[(364,51)(364,107)]) } Add(GetDataEx,9394776,749,46) { Angle=3 link(Data,11118687:Var3,[]) } Add(GetDataEx,8396457,378,102) { link(Data,16702274:Result,[]) } Add(Echo,3153681,616,133) { } Add(ArrayItem,5565059,266,161) { Name="money" link(onGet,8911526:doCompare,[]) } Add(mysql_num_rows,7580703,280,63) { link(onNumRows,10109276:doCompare,[]) } END_SDK Add(Vars,10218786,91,56) { Name="p" Point(Get) } Add(StrInt,10612791,98,105) { link(Text,10218786:Get,[]) } END_SDK Add(MultiElement,6171215,854,161) { @Hint=#10:Файлообмен| CodeType=1 link(onEvent1,13313673:doWork1,[]) AddHint(47,-129,86,14,@Hint) } BEGIN_SDK Add(EditMulti,7430567,14,14) { EventCount=1 WorkCount=1 Width=797 Height=1096 link(doWork1,15650683:doCase,[(32,20)(32,62)]) } Add(Case,15650683,49,56) { Value=Integer(55) link(onNextCase,8826433:doCase,[]) link(onTrue,5518619:doEvent,[(97,69)(97,167)]) } Add(DS_MySQL,465754,112,112) { Name="mainsql" Args=#2:id|5:fname| SelectState="SELECT s.*, u.name as user, (UNIX_TIMESTAMP() - s.down_time) / (24*3600) AS age FROM hiasm_share s, hiasm_users u WHERE s.user = u.user_id ORDER BY time DESC" InsertState="INSERT INTO hiasm_share(user, title, time, fname) VALUES(@id@, '%title%', UNIX_TIMESTAMP(), '@fname@')" DeleteState="DELETE FROM hiasm_share WHERE id = %id% " CountState="SELECT COUNT(*) FROM hiasm_share" KeyField="id" @IsLib=True link(id,7561118:Get,[]) link(fname,12281730:PostFiles,[(125,104)(174,104)]) } Add(DataManager,12546653,168,259) { DataSource="mainsql" PageCount=15 UserParams="q=55" FormType="multipart/form-data" Point(onCommand) link(onHeader,1262670:doPrint,[]) link(onItem,4197469:doPrint,[(212,272)(212,650)]) link(onInsert,3103524:doPrint,[(212,293)(212,629)]) link(onFooter,5240377:doEvent,[(212,300)(212,1056)]) link(onEmpty,7315571:doPrint,[(212,307)(212,1007)]) link(onPages,13669092:doMakeRuller,[(212,314)(212,408)]) link(onCommand,16173836:doCompare,[]) } Add(HTM_Table,1262670,224,259) { PrintMode=1 CellSpacing="1" CellPadding="3" Point(Style) link(onPrint,16482695:doPrint,[]) link(Style,4038074:Style,[]) } Add(HTM_Table,6719607,273,1050) { PrintMode=2 } Add(HTM_Tr,16482695,273,259) { link(onPrint,8299567:doEvent,[]) } Add(Hub,8299567,322,259) { OutCount=8 link(onEvent1,7404569:doPrint,[]) link(onEvent2,14261115:doPrint,[(354,272)(354,307)]) link(onEvent3,7584363:doPrint,[(354,279)(354,349)]) link(onEvent4,2092807:doPrint,[(354,286)(354,391)]) link(onEvent5,3687099:doPrint,[(354,293)(354,433)]) link(onEvent6,6439550:doPrint,[(354,300)(354,475)]) link(onEvent7,12154098:doPrint,[(354,307)(354,517)]) link(onEvent8,4301488:doPrint,[(354,314)(354,559)]) } Add(HTM_Th,7404569,371,259) { link(onPrint,3578077:doPrint,[]) } Add(VisualText,3578077,427,259) { Lines=#8:Название| Width=60 Point(doPrint) } Add(HTM_Tr,4197469,273,644) { link(onPrint,2906213:doEvent,[]) } Add(Hub,2906213,322,644) { OutCount=8 link(onEvent1,15116129:doPrint,[]) link(onEvent2,9257935:doPrint,[(354,657)(354,692)]) link(onEvent3,15552299:doPrint,[(354,664)(354,734)]) link(onEvent4,4580748:doPrint,[(354,671)(354,776)]) link(onEvent5,9518883:doPrint,[(354,678)(354,818)]) link(onEvent6,9576146:doPrint,[(354,685)(354,860)]) link(onEvent7,14721740:doPrint,[(354,692)(354,902)]) link(onEvent8,412859:doPrint,[(354,699)(354,944)]) } Add(HTM_Td,15116129,371,644) { link(onPrint,9572603:doPrint,[]) } Add(HTM_Tr,7315571,224,1001) { link(onPrint,11565645:doPrint,[]) } Add(HTM_Td,11565645,273,1001) { ColSpan=7 link(onPrint,1494745:doPrint,[]) } Add(VisualText,1494745,322,1001) { Lines=#13:(записей нет)| Width=109 Point(doPrint) } Add(HTM_Th,14261115,371,301) { link(onPrint,2156567:doPrint,[]) } Add(VisualText,2156567,427,301) { Lines=#5:Автор| Width=60 Point(doPrint) } Add(HTM_Th,7584363,371,343) { link(onPrint,13141600:doPrint,[]) } Add(VisualText,13141600,427,343) { Lines=#4:Дата| Width=60 Point(doPrint) } Add(HTM_Td,9257935,371,686) { link(onPrint,6723363:doPrint,[]) } Add(HTM_Td,15552299,371,728) { link(onPrint,12269387:doPrint,[]) } Add(DM_Label,9572603,427,644) { DataBind="title" } Add(DM_Label,6723363,427,686) { DataBind="user" } Add(DM_Label,12269387,427,728) { DataBind="time" ViewMode=2 Format="%H:%M %Y.%m" } Add(HTM_Th,2092807,371,385) { link(onPrint,4278394:doPrint,[]) } Add(VisualText,4278394,427,385) { Lines=#6:Ссылка| Width=60 Point(doPrint) } Add(HTM_Td,4580748,371,770) { link(onPrint,15772691:doStrCat,[]) } Add(DM_Label,3382283,483,714) { DataBind="id" ViewMode=1 } Add(Hub,5240377,224,1050) { link(onEvent1,6719607:doPrint,[]) } Add(If_else,16173836,224,315) { Op2=String(insert) link(onTrue,9903428:doWork1,[]) link(onFalse,94780:doCompare,[(265,328)(265,350)(212,350)(212,363)]) } Add(HTM_Tr,3103524,511,623) { link(onPrint,7955373:doEvent,[]) } Add(Hub,7955373,560,623) { OutCount=8 link(onEvent1,6420158:doPrint,[]) link(onEvent2,3174406:doPrint,[(592,636)(592,671)]) link(onEvent3,9216051:doPrint,[(592,643)(592,713)]) link(onEvent4,7640442:doPrint,[(592,650)(592,755)]) link(onEvent5,4569579:doPrint,[(592,657)(592,797)]) link(onEvent6,13246966:doPrint,[(592,664)(592,839)]) link(onEvent7,6903349:doPrint,[(592,671)(592,881)]) link(onEvent8,1257640:doPrint,[(592,678)(592,923)]) } Add(HTM_Td,6420158,609,623) { link(onPrint,2971303:doPrint,[]) } Add(HTM_Td,3174406,609,665) { link(onPrint,13140741:doEcho,[]) } Add(HTM_Td,9216051,609,707) { } Add(HTM_Td,4569579,609,791) { } Add(DM_Edit,2971303,665,623) { DataBind="title" Mode=1 } Add(Echo,13140741,714,665) { link(Message,9298093:Get,[]) } Add(GlobalVar,10928221,714,595) { Name="udata" } Add(ArrayItem,9298093,714,623) { Name="name" link(Array,10928221:Var,[]) } Add(HTM_File,95777,665,749) { Name="ufile" } Add(GlobalVar,13939925,112,35) { Name="udata" } Add(ArrayItem,7561118,112,63) { Name="user_id" link(Array,13939925:Var,[]) } Add(DM_Button,9173982,665,917) { Caption="Добавить" } Add(Vars,12281730,161,63) { Name="ufile" Param="name" Point(PostFiles) } Add(MultiElement,9903428,273,315) { @Hint=#17:Копирование файла| CodeType=1 link(Data1,9599025:Result,[(279,299)(314,299)]) } BEGIN_SDK Add(EditMulti,11646592,21,21) { WorkCount=1 DataCount=1 Width=454 Height=277 link(doWork1,7619135:doCompare,[(42,27)(42,188)]) } Add(FileTools,5864109,364,154) { link(FileName,12281730:PostFiles,[]) link(NewFileName,14170221:Var2,[]) } Add(Vars,12281730,357,42) { Name="ufile" Param="tmp_name" Point(PostFiles) } Add(StrCat,6449056,406,98) { Str1="./xf/attach/share/" link(Str2,11934496:Var2,[]) } Add(Vars,3807698,406,42) { Name="ufile" Param="name" Point(PostFiles) } Add(FileChecker,6789834,287,161) { Extensions=".zip,.rar,.gif,.png,.ico,.jpeg,.jpg" FileName="ufile" link(onCheck,5864109:doCopy,[]) link(onError,14204941:doDie,[(341,174)(341,209)]) link(MaxSize,11646592:Data1,[(300,91)(27,91)]) } Add(Die,14204941,364,203) { Text="Ошибка при загрузки файла" } Add(GlobalVar,13939925,63,98) { Name="udata" } Add(ArrayItem,7561118,63,133) { Name="user_id" link(Array,14743199:Var2,[]) } Add(If_else,7619135,63,182) { Type=2 Op2=Integer(0) link(onTrue,16450527:doCompare,[]) link(onFalse,5788812:doDie,[(107,195)(107,237)]) link(Op1,7561118:Get,[]) } Add(Die,5788812,126,231) { Text="К сожалению для гостей добавление в файлообменник не доступно :(" } Add(If_else,6276299,238,161) { link(onTrue,2275752:doBuild,[(278,167)(278,251)]) link(onFalse,6789834:doCheck,[(278,174)(278,167)]) } Add(FileTools,7341593,189,161) { Point(doFileExists) link(onEnd,6276299:doCompare,[]) link(FileName,14170221:Var1,[(195,142)]) } Add(GetDataEx,14170221,371,137) { Angle=1 link(Data,6449056:Result,[(412,142)]) } Add(Die,12636512,364,245) { } Add(StringBuilder,2275752,294,245) { Mask="Файл с именем %name% уже существует" Args=#17:Mask=Маска строки|4:name| link(onBuild,12636512:doDie,[]) link(name,11934496:Var1,[(307,86)]) } Add(GetDataEx,11934496,413,81) { link(Data,3807698:PostFiles,[]) } Add(ArrayItem,7081744,126,133) { Name="posts" link(Array,14743199:Var3,[(132,124)]) } Add(If_else,16450527,126,182) { Type=2 Op2=Integer(1) link(onTrue,7341593:doFileExists,[]) link(onFalse,9132511:doDie,[(174,195)(174,237)]) link(Op1,7081744:Get,[]) } Add(GetDataEx,14743199,63,119) { link(Data,13939925:Var,[]) } Add(Die,9132511,189,231) { Text="Недостаточное количество оставленных сообщений" } END_SDK Add(HTM_A,11124393,511,770) { Id="1" link(onPrint,15102582:doPrint,[]) } Add(StrCat,15772691,462,770) { Str1="forum_serv.php?q=56&id=" link(onStrCat,11124393:doPrint,[]) link(Str2,3382283:Data,[(475,758)(489,758)]) } Add(HTM_Th,3687099,371,427) { link(onPrint,5195235:doPrint,[]) } Add(VisualText,5195235,427,427) { Lines=#6:Размер| Width=60 Point(doPrint) } Add(HTM_Td,9518883,371,812) { link(onPrint,15039654:doPrint,[]) } Add(DM_Label,15039654,427,812) { DataBind="fname" ViewMode=3 Format="fsize" link(onPrint,3567581:doEcho,[]) } Add(Function,3156363,427,168) { Args=1 Name="fsize" link(onPrint,8554267:doOperation,[]) } Add(StrCat,7806682,476,70) { Str1="./xf/attach/share/" link(Str2,3156363:Arg1,[(489,59)(413,59)(413,212)(433,212)]) } Add(FileTools,14138986,476,119) { link(FileName,7806682:Result,[]) } Add(Hub,5518619,112,161) { OutCount=3 link(onEvent1,9599025:doCalc,[(157,167)(157,118)]) link(onEvent2,8674811:doPrint,[]) link(onEvent3,12546653:doMakeManager,[(156,181)(156,265)]) } Add(Math,8554267,476,168) { OpType=10 Op2=10 link(onResult,3156363:doReturn,[(522,174)(522,192)(415,192)(415,181)]) link(Op1,14138986:Size,[]) } Add(Echo,3567581,476,812) { Message="Kb" } Add(HTM_Td,7640442,609,749) { link(onPrint,95777:doPrint,[]) } Add(HTM_Th,4301488,371,553) { link(onPrint,2689649:doPrint,[]) } Add(VisualText,2689649,427,553) { Lines=#8:Действия| Width=60 Point(doPrint) } Add(CSS,4038074,231,210) { BgColor="gray" } Add(HTM_Td,412859,371,938) { link(onPrint,16715940:doPrint,[]) } Add(DM_Button,16715940,427,938) { Command=2 Caption="Удалить" Type=1 } Add(HTM_Td,1257640,609,917) { link(onPrint,9173982:doPrint,[]) } Add(HTML_Collector,8674811,168,168) { link(onPrint,12311957:doEcho,[]) link(size,68892:Result,[(174,156)(363,156)]) } BEGIN_SDK Add(HCEditor,10297085,21,21) { DataCount=#4:size| Width=419 link(doPrint,14041804:doPrint,[(31,27)(31,90)]) } Add(HTM_Html,14041804,42,84) { PrintMode=1 link(onPrint,4821218:doEvent,[]) } Add(Hub,4821218,91,84) { link(onEvent1,11062118:doPrint,[]) link(onEvent2,10011742:doPrint,[(131,97)(131,139)]) } Add(HTM_Head,11062118,140,84) { link(onPrint,5199658:doPrint,[]) } Add(HTM_Body,10011742,140,133) { Style="font-size: 14px;" PrintMode=1 link(onPrint,10970958:doBuild,[]) } Add(HTM_Style,5199658,189,84) { link(onPrint,7574246:doPrint,[]) } Add(CSS,7574246,238,84) { Tag="td" BgColor="white" link(onPrint,8561257:doPrint,[]) } Add(CSS,8561257,287,84) { Tag="th" BgColor="silver" link(onPrint,2930716:doPrint,[]) } Add(CSS,2930716,336,84) { Tag="input" BorderColor="gray" BorderWidth="1px" BorderStyle=3 BgColor="white" link(onPrint,11653949:doPrint,[]) } Add(Echo,13424524,238,133) { link(onEcho,139310:doPrint,[]) } Add(HTM_Br,139310,287,133) { link(onPrint,7957723:doPrint,[]) } Add(HTM_Br,7957723,336,133) { } Add(CSS,11653949,385,84) { Tag="table" FontSize="13px" } Add(StringBuilder,10970958,189,133) { Mask="Выкладывать файлы может любой зарегистрированный пользователь. Объем одного файла не может превышать %size%Kb. Файл должен соответствовать одному из следующих расширений: .zip,.rar,.gif,.png,.ico,.jpeg,.jpg " Args=#17:Mask=Маска строки|4:size| link(onBuild,13424524:doEcho,[]) link(size,10297085:size,[(202,77)(27,77)]) } END_SDK Add(Echo,12311957,224,168) { link(onEcho,3156363:doPrint,[]) } Add(MultiElementEx,13669092,224,402) { @Hint=#8:Страницы| CodeType=1 } BEGIN_SDK Add(EditMultiEx,7545212,21,21) { WorkCount=#12:doMakeRuller| DataCount=#8:Position| Width=342 link(doMakeRuller,2100304:doMakeRuller,[(37,27)(37,69)]) } Add(DM_Ruller,2100304,49,63) { DataSource="mainsql" Length=3 link(onPage,12011373:doStrCat,[]) link(onCurrentPage,2089850:doEcho,[(97,76)(97,132)]) link(onSpacer,11517329:doEcho,[(91,83)(91,181)]) } Add(Echo,15979535,259,63) { link(Message,9351950:Var3,[(265,51)(300,51)(300,114)]) } Add(HTM_A,16063806,210,63) { Id="n" link(onPrint,15979535:doEcho,[]) } Add(StrCat,12011373,112,63) { Str1="forum_serv.php?q=55&start=" link(onStrCat,2715730:doEvent,[]) link(Str2,2100304:Offset,[(125,51)(93,51)(93,107)(62,107)]) } Add(Echo,11517329,112,175) { Message="..." } Add(Hub,2715730,161,63) { link(onEvent1,16063806:doPrint,[]) link(onEvent2,12959143:doWork1,[(200,76)]) } Add(Echo,7181166,210,126) { Message=" " } Add(Echo,2089850,112,126) { link(onEcho,12959143:doWork2,[]) link(Message,9351950:Var2,[]) } Add(GetDataEx,9351950,112,109) { Angle=3 link(Data,2100304:Page,[(55,114)]) } Add(HubEx,12959143,196,126) { link(onEvent,7181166:doEcho,[]) } Add(DS_MySQL,14779218,210,175) { elink(465754) } END_SDK Add(If_else,94780,224,357) { Op2=String(delete) link(onTrue,1906327:doWork1,[]) } Add(MultiElement,1906327,273,357) { @Hint=#17:Права на удаление| CodeType=1 } BEGIN_SDK Add(EditMulti,5734963,21,21) { WorkCount=1 Width=447 Height=235 link(doWork1,270052:doStrCat,[(39,27)(39,153)]) } Add(GlobalVar,13939925,217,49) { Name="udata" } Add(ArrayItem,7561118,217,98) { Name="level" link(Array,11590015:Var2,[]) } Add(If_else,6923122,217,147) { Op2=Integer(1) link(onTrue,7061168:doWork1,[(319,153)]) link(onFalse,13016833:doCompare,[]) link(Op1,7561118:Get,[]) } Add(Die,11468824,322,196) { Text="Вы не имеете прав для удаления этого файла" } Add(If_else,13016833,266,154) { Op2=Integer(1) link(onTrue,7061168:doWork2,[]) link(onFalse,11468824:doDie,[(310,167)(310,202)]) link(Op1,11943936:Get,[]) link(Op2,8092523:Get,[(279,142)(321,142)]) } Add(ArrayItem,8092523,315,98) { Name="user_id" link(Array,11590015:Var3,[(321,79)]) } Add(GetDataEx,11590015,217,74) { link(Data,13939925:Var,[]) } Add(FileTools,334327,399,140) { } Add(HubEx,7061168,315,154) { link(onEvent,6449056:doStrCat,[]) } Add(mysql_query,1012291,105,147) { link(onQuery,16265189:doFetchArray,[]) } Add(mysql_fetch_array,16265189,154,147) { link(onFetchArray,6923122:doCompare,[]) } Add(StrCat,270052,56,147) { Str1="SELECT * FROM hiasm_share WHERE id = " link(onStrCat,1012291:doQuery,[]) link(Str2,7588223:Post,[(69,139)(62,139)]) } Add(ArrayItem,11943936,266,98) { Name="user" link(Array,10755187:Var2,[]) } Add(StrCat,6449056,350,154) { Str1="./xf/attach/share/" link(onStrCat,334327:doDelete,[]) link(Str2,9159744:Get,[]) } Add(ArrayItem,9159744,357,98) { Name="fname" link(Array,10755187:Var3,[(363,44)]) } Add(GetDataEx,10755187,266,39) { Angle=3 link(Data,16265189:Result,[(196,44)(196,188)(160,188)]) } Add(Vars,7588223,56,98) { Name="id" } END_SDK Add(HTM_Th,6439550,371,469) { link(onPrint,10502262:doPrint,[]) } Add(VisualText,10502262,427,469) { Lines=#7:Закачек| Width=60 Point(doPrint) } Add(HTM_Td,9576146,371,854) { link(onPrint,16453938:doPrint,[]) } Add(DM_Label,16453938,427,854) { DataBind="down" ViewMode=1 } Add(HTM_Td,13246966,609,833) { } Add(Case,8826433,210,56) { Value=Integer(56) link(onNextCase,7430567:onEvent1,[(275,62)(275,20)]) link(onTrue,1954296:doWork1,[(250,69)(250,83)]) } Add(MultiElement,1954296,259,77) { @Hint=#13:Закачка файла| CodeType=1 } BEGIN_SDK Add(EditMulti,5494149,21,21) { WorkCount=1 Width=468 link(doWork1,12182058:doStrCat,[(59,27)(59,125)]) } Add(Vars,12281730,98,56) { Name="id" Point(Get) } Add(StrCat,12182058,98,119) { Str1="SELECT fname FROM hiasm_share WHERE id = " link(onStrCat,3845354:doQuery,[]) link(Str2,6079849:Var2,[]) } Add(mysql_query,3845354,154,119) { link(onQuery,15602556:doResult,[]) } Add(mysql_result,15602556,210,119) { Index=0 link(onResult,2234754:doStrCat,[]) } Add(StringBuilder,3823137,378,119) { Mask="UPDATE hiasm_share SET down = down + 1, down_time = UNIX_TIMESTAMP(), ip = '%ip%' WHERE id = %id% AND ip <> '%ip%' " Args=#17:Mask=Маска строки|2:id|2:ip| link(onBuild,2863371:doExec,[(422,125)(422,132)]) link(id,6079849:Var3,[(391,107)]) link(ip,4998276:Server,[]) } Add(StrCat,2234754,266,119) { Str1="Location: ./xf/attach/share/" link(onStrCat,10392044:doHeader,[]) } Add(Header,10392044,322,119) { link(onHeader,3823137:doBuild,[]) } Add(mysql_query,2863371,434,119) { } Add(GetDataEx,6079849,105,102) { link(Data,12281730:Get,[]) } Add(Vars,4998276,385,63) { Name="REMOTE_ADDR" Point(Server) } END_SDK Add(DM_Label,15102582,560,770) { DataBind="fname" ViewMode=1 } Add(MathParse,9599025,308,112) { DataCount=3 MathStr="(5120 + %1*1024 + %2*2560 + %3)*1000" link(onResult,68892:doOperation,[]) link(X1,12244227:Get,[]) link(X2,11557727:Get,[(321,100)(335,100)]) link(X3,6325806:Get,[(328,100)(356,100)]) } Add(GlobalVar,13347054,308,21) { Name="udata" } Add(ArrayItem,12244227,308,56) { Name="rank" link(Array,3022064:Var2,[]) } Add(ArrayItem,11557727,329,56) { Name="level" link(Array,11155260:Var2,[]) } Add(GetDataEx,3022064,308,39) { link(Data,13347054:Var,[]) } Add(Math,68892,357,112) { OpType=10 Op2=10 Extern=1 } Add(ArrayItem,6325806,350,56) { Name="rating" link(Array,11155260:Var3,[(356,44)]) } Add(GetDataEx,11155260,329,39) { Angle=3 link(Data,3022064:Var3,[]) } Add(HTM_Th,12154098,371,511) { link(onPrint,5231974:doPrint,[]) } Add(VisualText,5231974,427,511) { Lines=#3:Age| Width=60 Point(doPrint) } Add(HTM_Td,14721740,371,896) { link(onPrint,3657088:doPrint,[]) } Add(DM_Label,3657088,427,896) { DataBind="age" ViewMode=1 } Add(HTM_Td,6903349,609,875) { } END_SDK Add(hcVisualText,3136774,518,315) { Lines=#2:64| } Add(hcButton,4012275,441,350) { Caption="Next" link(onClick,16321642:doOperation,[]) } Add(hcMath,16321642,518,350) { Op2=1 ResultType=0 link(onResult,3136774:doText,[(562,356)(562,338)(506,338)(506,321)]) link(Op1,3136774:Text,[]) } Add(InfoTip,7413917,266,203) { Info=#1:1|2:22|2:45|2:50| Width=29 Height=53 } Add(InfoTip,6694799,314,203) { Info=#1:2|2:10|2:14|2:20|2:21|2:31|2:34|2:35|2:43|2:44|2:48|2:58|2:61| Width=29 Height=172 } Add(InfoTip,16328731,367,203) { Info=#1:3|1:4|1:5|1:6|1:7|1:8|1:9|2:11|2:12|2:13|2:30|2:49|2:51|2:57|2:59|2:60|2:62|2:66| Width=29 Height=235 } Add(InfoTip,724124,416,203) { Info=#2:15|2:16|2:17|2:52| Width=29 Height=53 } Add(InfoTip,15465464,465,203) { Info=#2:18|2:23| Width=29 } Add(InfoTip,14898408,514,203) { Info=#2:19|2:42| Width=29 } Add(InfoTip,7863882,563,203) { Info=#2:24|2:25|2:26|2:32| Width=29 Height=53 } Add(InfoTip,13352118,612,203) { Info=#2:27|2:28|2:29|2:46| Width=29 Height=53 } Add(InfoTip,2929258,661,203) { Info=#2:33|2:41|2:47|2:54| Width=29 Height=53 } Add(InfoTip,2687698,710,203) { Info=#2:36| Width=29 Height=18 } Add(InfoTip,11384906,759,203) { Info=#2:37|2:38|2:39|2:40| Width=29 Height=53 } Add(InfoTip,2147559,808,203) { Info=#2:53| Width=29 Height=18 } Add(InfoTip,7379531,857,203) { Info=#2:55|2:56| Width=29 Height=25 } Add(MultiElement,13313673,903,161) { @Hint=#11:Голосование| CodeType=1 AddHint(-29,-82,81,13,@Hint) } BEGIN_SDK Add(EditMulti,10176544,21,21) { EventCount=1 WorkCount=1 link(doWork1,15650683:doCase,[(31,27)(31,62)]) } Add(Case,15650683,42,56) { Value=Integer(63) link(onNextCase,1021647:doCase,[]) link(onTrue,8565733:doRunRocket,[(86,69)(86,181)]) } Add(MultiElementEx,8565733,98,175) { @Hint=#17:Сохранение голоса| link(ip,8998182:Var2,[]) link(answer,10612791:Result,[(111,146)(146,146)]) } BEGIN_SDK Add(EditMultiEx,2353980,21,21) { WorkCount=#11:doRunRocket| DataCount=#2:ip|6:answer| Width=503 Height=235 link(doRunRocket,8393404:doGet,[(39,27)(39,139)]) } Add(StringBuilder,1338007,406,196) { Mask="INSERT INTO hiasm_vote(user, vote, answer, time) VALUES(%user%, '%vote%', %answer%, UNIX_TIMESTAMP())" Args=#17:Mask=Маска строки|4:user|4:vote|6:answer| link(onBuild,15642018:doExec,[(446,202)(446,209)]) link(user,3856388:Var3,[(419,184)]) link(vote,12817642:Result,[(426,180)(167,180)]) link(answer,2353980:answer,[(433,84)(34,84)]) } Add(mysql_query,15642018,455,196) { } Add(md5,12817642,161,133) { link(onMD5,12721088:doBuild,[]) link(Value,2353980:ip,[(167,92)(27,92)]) } Add(StringBuilder,12721088,210,133) { Mask="SELECT * FROM hiasm_vote WHERE user = %user% AND vote = '%vote%'" Args=#17:Mask=Маска строки|4:vote|4:user| link(onBuild,5168791:doQuery,[]) link(user,3856388:Var1,[(230,121)(97,121)]) } Add(GlobalVar,5657376,56,98) { Name="udata" } Add(mysql_query,5168791,259,133) { link(onQuery,4413395:doNumRows,[]) } Add(mysql_num_rows,4413395,308,133) { link(onNumRows,9439300:doCompare,[]) } Add(If_else,9439300,357,133) { link(onTrue,5146059:doEcho,[]) link(onFalse,1338007:doBuild,[(397,146)(397,202)]) } Add(Echo,5146059,406,133) { Message="mes\tВы уже голосовали по данному вопросу!\r\n" } Add(ArrayItem,8393404,56,133) { Name="user_id" link(onGet,10593594:doCompare,[]) link(Array,5657376:Var,[]) } Add(If_else,10593594,105,133) { Type=2 Op2=Integer(0) link(onTrue,12817642:doMD5,[]) link(onFalse,13961660:doEcho,[(149,146)(149,202)]) } Add(Echo,13961660,161,196) { Message="mes\tДля участия в голосовании необходимо зарегистрироваться или войти в систему\r\n" } Add(GetDataEx,3856388,91,179) { Angle=3 link(Data,8393404:Get,[(62,184)]) } END_SDK Add(Vars,10218786,91,56) { Name="v" Point(Get) } Add(CallFunc,14860466,98,105) { Args=1 Name="cvt_text" link(Arg1,10218786:Get,[]) } Add(Vars,10483026,133,56) { Name="a" Point(Get) } Add(StrInt,10612791,140,105) { link(Text,10483026:Get,[]) } Add(Case,1021647,182,56) { Value=Integer(64) link(onNextCase,10176544:onEvent1,[(268,62)(268,27)]) link(onTrue,13537136:doRunRocket,[(226,69)(226,181)]) } Add(MultiElementEx,13537136,238,175) { @Hint=#17:Вывод результатов| link(ip,8998182:Var3,[(244,159)]) link(answer,12899185:Result,[]) } BEGIN_SDK Add(EditMultiEx,2353980,21,21) { WorkCount=#11:doRunRocket| DataCount=#2:ip|6:answer| Width=1126 Height=326 link(doRunRocket,8393404:doGet,[(39,27)(39,139)]) } Add(md5,12817642,161,133) { link(onMD5,6556398:doBuild,[]) link(Value,2353980:ip,[(167,92)(27,92)]) } Add(StringBuilder,12721088,406,133) { Mask="SELECT answer, COUNT(*) AS cnt FROM hiasm_vote WHERE vote = '%vote%' GROUP BY answer ORDER BY answer" Args=#17:Mask=Маска строки|4:vote| link(onBuild,5168791:doQuery,[]) link(vote,2207110:Var2,[]) } Add(GlobalVar,5657376,56,98) { Name="udata" } Add(mysql_query,5168791,455,133) { link(onQuery,4413395:doNumRows,[]) } Add(mysql_num_rows,4413395,504,133) { link(onNumRows,10130093:doFor,[]) } Add(Echo,5146059,833,238) { link(onEcho,10184928:doClear,[(1054,244)(1054,90)]) } Add(ArrayItem,8393404,56,133) { Name="user_id" link(onGet,10593594:doCompare,[]) link(Array,5657376:Var,[]) } Add(If_else,10593594,105,133) { Type=2 Op2=Integer(0) link(onTrue,12817642:doMD5,[]) link(onFalse,13961660:doEcho,[(149,146)(149,202)]) } Add(Echo,13961660,161,196) { Message="mes\tДля участия в голосовании необходимо зарегистрироваться или войти в систему\r\n" } Add(For,10130093,553,133) { link(onEvent,15853333:doFetchArray,[]) } Add(mysql_fetch_array,15853333,609,133) { link(onFetchArray,2478888:doGet,[]) link(Query,5168791:Result,[(615,121)(538,121)(538,177)(461,177)]) } Add(StringBuilder,15830112,784,238) { Mask="set\tvote%id%\tself_data\t%cnt% %users%\r\n" Args=#17:Mask=Маска строки|2:id|3:cnt|5:users| link(onBuild,5146059:doEcho,[]) link(cnt,14140588:Get,[]) link(users,13207750:Result,[(811,228)(1070,228)]) } Add(ArrayItem,2478888,658,133) { Name="answer" link(onGet,7256139:doEvent,[]) } Add(Math,3457717,735,238) { link(onResult,15830112:doBuild,[]) link(Op2,2353980:answer,[(748,77)(34,77)]) } Add(ArrayItem,14140588,798,189) { Name="cnt" link(Array,15853333:Result,[(804,177)(615,177)]) } Add(StringBuilder,6556398,210,133) { Mask="SELECT * FROM hiasm_vote WHERE user = %user% AND vote = '%vote%'" Args=#17:Mask=Маска строки|4:vote|4:user| link(onBuild,6962202:doQuery,[]) link(user,8393404:Get,[(230,121)(96,121)(96,177)(62,177)]) } Add(mysql_query,6962202,259,133) { link(onQuery,13049911:doNumRows,[]) } Add(mysql_num_rows,13049911,308,133) { link(onNumRows,9439300:doCompare,[]) } Add(If_else,9439300,357,133) { link(onTrue,12721088:doBuild,[]) link(onFalse,13126685:doEcho,[(397,146)(397,202)]) } Add(Echo,13126685,406,196) { Message="mes\tДля просмотра результатов опроса вы должны оставить свой голос\r\n" } Add(StringBuilder,13090908,763,133) { Mask="SELECT u.name FROM hiasm_vote v, hiasm_users u WHERE v.vote = '%vote%' AND v.answer = %a% AND v.user = u.user_id ORDER BY v.id" Args=#17:Mask=Маска строки|4:vote|1:a| link(onBuild,5181534:doQuery,[]) link(vote,2207110:Var3,[(776,114)]) } Add(Memory,10184928,1071,77) { } Add(Hub,7256139,700,133) { link(onEvent1,13090908:doBuild,[]) link(onEvent2,3457717:doOperation,[(724,146)(724,244)]) } Add(GetDataEx,2207110,413,109) { Angle=3 link(Data,12817642:Result,[(350,114)(350,177)(167,177)]) } Add(mysql_query,5181534,812,133) { link(onQuery,16239134:doNumRows,[]) } Add(mysql_num_rows,16239134,861,133) { link(onNumRows,3175537:doFor,[]) } Add(For,3175537,910,133) { link(onEvent,8210419:doFetchArray,[]) } Add(mysql_fetch_array,8210419,959,133) { link(onFetchArray,424178:doGet,[]) link(Query,5181534:Result,[(965,121)(901,121)(901,173)(818,173)]) } Add(ArrayItem,424178,1008,133) { Name="name" link(onGet,13207750:doBuild,[]) } Add(StringBuilder,13207750,1064,133) { Mask="%old%, %new%" Args=#17:Mask=Маска строки|3:old|3:new| link(onBuild,10184928:doValue,[(1113,139)(1113,67)(1054,67)(1054,83)]) link(old,10184928:Value,[]) } END_SDK Add(GetDataEx,8998182,98,154) { link(Data,14860466:Result,[]) } Add(Vars,13251474,238,56) { Name="id" Point(Get) } Add(StrInt,12899185,245,105) { link(Text,13251474:Get,[]) } END_SDK Add(InfoTip,14679878,906,203) { Info=#2:63|2:64| Width=29 Height=39 }