That system is now on iBotModz. This system logs your username, post count, rep and group ID. Program makers then can use this to limit their applications to only VIP or only to users above 10 REP and 100 posts. The possibilities are endless. The system takes your IP and uses it to match towards an account which then is sent back to your program. So you can create dynamic programs sayings "Hello $username. If anyone decides to use this they can implement it via a button click, or forced on form load. This example gives an intro with no post count requirement.
pre.png 25.41K
0 downloads
post.png 25.8K
1 downloadsThis is before you do anything. On a real example, it might say "200 Posts and 10 Rep needed" Then you click "Authorize" and wait a few seconds. Now it has grabbed my post count, username and rep. Now you can do simple if statements to determine if that user is allowed to your program.
Now for some source code.
/*
* Allowed User Groups to post, edit this yourself
* Remove the ones that you DONT want to use your program
* For this demo, all the groups are there
*
* The ones that are missing are Bots,
* Guests and some old usergroups that are hidden
*/
ArrayList aug = new ArrayList();
aug.Add(1); //Validating
aug.Add(3); //Members
aug.Add(4); //Owner
aug.Add(5); //Banned
aug.Add(7); //Sub Admins
aug.Add(8); //VIP
aug.Add(9); //Global Mods
aug.Add(10); //GFX Team
aug.Add(12); //Retired Staff
aug.Add(14); //Members+
aug.Add(15); //Donors
aug.Add(16); //Donors+
//These are the the levels of which you want for posts and REP
int minPosts = 0;
int minRep = 0;
//The client to download the string, which contains all login info
WebClient client = new WebClient();
string info = client.DownloadString("http://www.ibotmodz.net/index.php/prog/api");
client.Dispose();
//Check if website online or not
if (String.IsNullOrEmpty(info))
MessageBox.Show("iBotModz is offline");
//Gathering the 4 variables
string user = info.Substring((info.IndexOf("[user]") + 6), ((info.IndexOf("[/user]") - (info.IndexOf("[user]") + 6))));
//Check if guest
if (String.IsNullOrEmpty(user))
{
MessageBox.Show("Please become a member on iBotModz.net." + Environment.NewLine + Environment.NewLine + "If you are a member....Make a post" + Environment.NewLine + "Without using the quick reply :)");
Environment.Exit(0);
}
int posts = Convert.ToInt32(info.Substring((info.IndexOf("[posts]") + 7), ((info.IndexOf("[/posts]") - (info.IndexOf("[posts]") + 7)))));
int rep = Convert.ToInt32(info.Substring((info.IndexOf("[rep]") + 5), ((info.IndexOf("[/rep]") - (info.IndexOf("[rep]") + 5)))));
int groupID = Convert.ToInt32(info.Substring((info.IndexOf("[groupid]") + 9), ((info.IndexOf("[/groupid]") - (info.IndexOf("[groupid]") + 9)))));
//Check for posts
if (minPosts > posts)
{
MessageBox.Show("You need more posts to use this program.");
this.Close();
}
//Check for REP level
if (minRep > rep)
{
MessageBox.Show("You need more REP to use this program.");
this.Close();
}
//Check for memberID
if (groupID == 0)
MessageBox.Show("Sorry, you don't have a usergroup.");
int flag = 0; // ((0 = failed)) ((1 = passed))
//This will go through each allowed ID, so lets hope we are in here
foreach (int i in aug)
{
if (groupID == i)
{
//Yes we found it
//Debug.WriteLine(groupID + " passed becuase it was equal to " + i);
flag = 1;
break;
}
else
{
//so far theres nothing, keep going
flag = 0;
//Debug.WriteLine(groupID + " failed becuase it was equal to " + i);
}
}
//Check if passed or not
switch (flag)
{
case 1: //Login passed
break;
case 0: //Login Failed
this.Close();
break;
}
Its commented, so I'm not going to explain it.
You may download the full source
ibmAuthSource.rar 210.43K
16 downloadsThe example program.
ibmAuth.exe 111K
17 downloadsOr the AUTH image.
ibmAUTH.png 16.63K
1 downloadsIf you need to post to generate your record, and don't want to spam some random topic, use this topic. Otherwise post normally. http://www.ibotmodz....20
Edited by iBotPeaches, 22 August 2009 - 04:11 PM.
Updated on August 21, 2009




This topic is locked












