############### ## Made by ## ## Nargil ## ## ## ## #1024 @ ## ## Quakenet ## ## ## ## Free for ## ## personal ## ## use ## ## ## ## !FIX! ## ## 2 ## ## Fixes ## ############### menu channel,status,query,nicklist,menubar { - Personnummergenerator:/person } on *:load:{ unload -rs -rs Personnummergenerator-by.Nargil.ini echo -a Personnummergenerator laddad. Finns nu i menyn. echo -a Made by Nargil - #1024 @ Quakenet.org - Free for personal use personpic 0 0 0 0 } alias personnummer { if (($len($1) != 9) || ($1 !isnum)) { return Error1 halt } elseif ($1 == 000000000) { return Error2 halt } elseif ($right($left($1,6),4) == 0229) { if ($chr(46) isin $calc($left($1,2) / 4)) { return Error2 halt } } elseif ($right($left($1,4),2) == 01) { if ($right($left($1,6),2) > 31) { return Error2 halt } } elseif ($right($left($1,4),2) == 03) { if ($right($left($1,6),2) > 31) { return Error2 halt } } elseif ($right($left($1,4),2) == 04) { if ($right($left($1,6),2) > 30) { return Error2 halt } } elseif ($right($left($1,4),2) == 05) { if ($right($left($1,6),2) > 31) { return Error2 halt } } elseif ($right($left($1,4),2) == 06) { if ($right($left($1,6),2) > 30) { return Error2 halt } } elseif ($right($left($1,4),2) == 07) { if ($right($left($1,6),2) > 31) { return Error2 halt } } elseif ($right($left($1,4),2) == 08) { if ($right($left($1,6),2) > 31) { return Error2 halt } } elseif ($right($left($1,4),2) == 09) { if ($right($left($1,6),2) > 30) { return Error2 halt } } elseif ($right($left($1,4),2) == 10) { if ($right($left($1,6),2) > 31) { return Error2 halt } } elseif ($right($left($1,4),2) == 11) { if ($right($left($1,6),2) > 30) { return Error2 halt } } elseif ($right($left($1,4),2) == 12) { if ($right($left($1,6),2) > 31) { return Error2 halt } } var %x = $1 var %z = $calc($left(%x,1)*2) $+ $calc($right($left(%x,2),1)*1) $+ $calc($right($left(%x,3),1)*2) $+ $calc($right($left(%x,4),1)*1) $+ $calc($right($left(%x,5),1)*2) $+ $calc($right($left(%x,6),1)*1) $+ $calc($right($left(%x,7),1)*2) $+ $calc($right($left(%x,8),1)*1) $+ $calc($right($left(%x,9),1)*2) var %n = 1 var %q = 0 var %t = $len(%z) while (%n <= %t) { var %q = $calc(%q + $right($left(%z,%n),1)) inc %n } if ($right(%q,1) == 0) { var %f = $left(%q,1) } else { var %f = $left(%x,6) $+ - $+ $right(%x,3) $+ $calc(10 - $right(%q,1)) } return %f } alias personkoen { var %x = $1 if ($right($left(%x,10),1) isin 13579) { var %f = 1 } else { var %f = 0 } return %f } alias personlaen { var %x = $1 var %z = $right($left(%x,10),3) if (%z isnum 001-139) { return Stockholms län (AB) } elseif (%z isnum 140-159) { return Uppsala län (C) } elseif (%z isnum 160-189) { return Södermanlands län (D) } elseif (%z isnum 190-237) { return Östergötlands län (E) } elseif (%z isnum 240-269) { return Jönköpings län (F) } elseif (%z isnum 270-289) { return Kronobergs län (G) } elseif (%z isnum 290-319) { return Kalmar län (H) } elseif (%z isnum 320-329) { return Gotlands län (I) } elseif (%z isnum 330-349) { return Blekinge län (K) } elseif (%z isnum 350-389) { return Kristianstads län (L) } elseif (%z isnum 390-459) { return Malmöhus län (M) } elseif (%z isnum 460-479) { return Hallands län (N) } elseif (%z isnum 480-549) { return Göteborgs och Bohus län (O) } elseif (%z isnum 550-589) { return Älvsborgs län (P) } elseif (%z isnum 590-619) { return Skaraborgs län (R) } elseif (%z isnum 620-649) { return Värmlands län (S) } elseif (%z isnum 660-689) { return Örebro län (T) } elseif (%z isnum 690-709) { return Västmanlands län (U) } elseif (%z isnum 710-739) { return Kopparbergs län (W) } elseif (%z isnum 740-749) { return Serien används eventuellt för adopterade, som fötts utanför Sverige } elseif (%z isnum 750-779) { return Gävleborgs län (X) } elseif (%z isnum 780-819) { return Västernorrlands län (Y) } elseif (%z isnum 820-849) { return Jämtlands län (Z) } elseif (%z isnum 850-889) { return Västerbottens län (AC) } elseif (%z isnum 890-929) { return Norrbottens län (BD) } elseif (%z isnum 930-999) { return Extraserie använd när de andra tar slut eller vid immigration } } alias personsign { if ($right($left($1,4),2) == 01) { if ($right($left($1,6),2) <= 19) { return Stenbocken halt } else { return Vattumannen halt } } if ($right($left($1,4),2) == 02) { if ($right($left($1,6),2) <= 18) { return Vattumannen halt } else { return Fiskarna halt } } if ($right($left($1,4),2) == 03) { if ($right($left($1,6),2) <= 20) { return Fiskarna halt } else { return Väduren halt } } if ($right($left($1,4),2) == 04) { if ($right($left($1,6),2) <= 19) { return Väduren halt } else { return Oxen halt } } if ($right($left($1,4),2) == 05) { if ($right($left($1,6),2) <= 20) { return Oxen halt } else { return Tvillingarna halt } } if ($right($left($1,4),2) == 06) { if ($right($left($1,6),2) <= 20) { return Vattumannen halt } else { return Kräftan halt } } if ($right($left($1,4),2) == 07) { if ($right($left($1,6),2) <= 22) { return Kräftan halt } else { return Lejonet halt } } if ($right($left($1,4),2) == 08) { if ($right($left($1,6),2) <= 22) { return Lejonet halt } else { return Jungfrun halt } } if ($right($left($1,4),2) == 09) { if ($right($left($1,6),2) <= 22) { return Jungfrun halt } else { return Vågen halt } } if ($right($left($1,4),2) == 10) { if ($right($left($1,6),2) <= 22) { return Vågen halt } else { return Skorpionen halt } } if ($right($left($1,4),2) == 11) { if ($right($left($1,6),2) <= 21) { return Skorpionen halt } else { return Skytten halt } } if ($right($left($1,4),2) == 12) { if ($right($left($1,6),2) <= 21) { return Skytten halt } else { return Stenbocken halt } } } alias person { dialog -md persongui persongui } dialog persongui { title "Personnummergenerator" size -1 -1 240 68 option dbu button "Generate", 1, 5 5 50 10 edit "000000", 2, 60 5 25 10, center text "-", 3, 85 6 4 10, center edit "000", 4, 90 5 16 10, center edit "", 5, 106 5 7 10, read edit "", 6, 5 20 108 10, read center edit "", 7, 5 32 108 10, read center edit "", 8, 5 44 108 10, read center edit "", 9, 5 56 108 10, read center icon 10, 115 -1 125 50, personpic.jpeg button "Kopiera text", 11, 117 44 58 10 button "Spara bild", 12, 180 44 58 10 } alias personpic { window -pd @person 0 1 250 100 drawfill -s @person 0 1 5 5 drawtext -pbp @person 1 0 fixedsys 10 5 5 Personnummer: $1 drawtext -pbp @person 1 0 fixedsys 10 5 21 Kön: $2 drawtext -pbp @person 1 0 fixedsys 10 5 37 Stjärntecken: $3 drawtext -pbp @person 1 0 fixedsys 10 5 53 Län: $4- drawsave -q100 @person personpic.jpeg drawsave -q100 @person personpic2.jpeg window -ac @person } on 1:dialog:persongui:sclick:11:{ clipboard $did(persongui,6).text $+ $chr(10) $+ $did(persongui,7).text $+ $chr(10) $+ $did(persongui,8).text $+ $chr(10) $+ $did(persongui,9).text } on 1:dialog:persongui:sclick:12:{ copy -ao personpic.jpeg $sfile(C:\,Spara Personnummer.jpeg,Spara) } on 1:dialog:persongui:sclick:1:{ var %x = $personnummer($did(persongui,2) $+ $did(persongui,4).text) if (Error1 == %x) { did -r persongui 6 did -a persongui 6 Skriv in 9 SIFFROR... did -r persongui 7 did -r persongui 8 did -r persongui 9 } elseif (Error2 == %x) { did -r persongui 6 did -a persongui 6 Skriv in ett giltigt nummer... did -r persongui 7 did -r persongui 8 did -r persongui 9 } else { var %r = $right(%x,1) did -r persongui 5 did -a persongui 5 %r did -r persongui 6 did -a persongui 6 Hela personnummret är: %x did -r persongui 7 var %k = $personkoen(%x) var %u = $personlaen(%x) var %s = $personsign(%x) did -a persongui 7 Kön: $replace(%k, 1, Man, 0, Kvinna) did -r persongui 8 did -a persongui 8 Län: %u did -r persongui 9 did -a persongui 9 Stjärntecken: %s personpic %x $replace(%k, 1, Man, 0, Kvinna) %s %u } did -g persongui 10 personpic.jpeg }