Jump to content

Download: Duplicate Members Logger


PrinceOfAbyss

Recommended Posts

File Name: Duplicate Members Logger
File Submitter: PrinceOfAbyss
File Submitted: 18 Dec 2009
File Category: Applications

Duplicate Members Logger adds logging functionality, using a Flash cookie, of members who use multiple accounts from the same computer to access your IP.Board.

The use of a Flash cookie makes the application a cross-browser solution to deal with "ghost" members, as it detects and reports them even if they use one browser for each registered account.

Note: For people upgrading from v1.0.0 of the app, you will most probably have to manually restart the appropriate hook. This is because upon upgrade of your IP.Board to v3.2.0+ the system has automatically disabled the execution of the hook for incompatibility reasons. You simply have to go to System > Applications & Modules > Manage Hooks > Disabled Hooks (tab) and click on the Enable button of Duplicate Members Logger v2.0.0 hook.

Attention: Be sure to download the appropriate version of the app according to your IP.Board version.

Click here to download this file

Link to comment
  • Replies 221
  • Created
  • Last Reply

You may want to add a little more information about it.

I installed it onto a test forum and it seems to work well, however does it go off registration IP duplicates or the IP logging into the account?

After looking around I came across this topic: Link I learnt a bit more about it, you should add some of that information here :D

Nice mod :thumbsup:

Link to comment

Yea, you are right, however this topic was created automatically, and didn't have the chance to write anything.

So here is my initial post from the topic you mention above:


I'd like to present you my first app, the Duplicate Members Logger.



Its main feature is the use of the so-called flash cookies to detect multiple accounts being used on the same computer.



Basically, it stores in a table the member IDs that have been used on each computer that has accessed the forum, and creates unique pairs of the members that correspond to those IDs.



For example if a person logs into your forum from one computer with the accounts: test1, test2, and test3, and from another computer with the accounts: test1, test2, and test 4, this will create the following pairs of accounts: test1-test2, test1-test3, test2-test3, test1-test4, and test2-test4. Then, you can handle those accounts independently, and choose among excluding a specific pair, ban one or both members of each pair, or finally delete one or both members of each pair.



Finally, if you delete a member not through the appropriate option of the app, but rather through ACP > Members > Manage Members > Delete Member button, this will produce some orphaned records in the duplicate or exclusion pairs screens, if that member was in one or more pairs. For that reason, there is a rebuild feature, that removes those orphaned records.



I didn't add any fancy features like email, PM, topic, etc notifications when a duplicate account is detected, as I think they are just a waste of time. Just like we check frequently for new members awaiting admin validation, we can also check for duplicate accounts being detected. ;)



Right now the app is 100% finished, but I want to test it a bit more before I publish it in the IPS resources site, that will happen during the weekend, or on Monday.



Ah, here are some screenshots of the app:



%7Boption%7D



%7Boption%7D



%7Boption%7D




Guys, I should make it clear that I created this app with very basic features, exactly the way I wanted it to be for my forum's needs. However, I'm open to ideas and suggestions, to improve it more (even though I have designed it very carefully, and after much thinking about it).

So I hope to get feedback from you soon. :D
Link to comment

Does it adds any additional load on server? Just curious.



The first time a member visits your forum, the script runs a single SQL query to update the database with the new member ID. Each next time they visit your board nothing is executed (except for the actionscript within the .swf, which is a single if check anyway).


I get only zeros in the Admin panel...



Does it take time for the application to start working?



What browser did you check it with? Maybe the embed tag that I used doesn't load the .swf at all? I checked it with IE7, IE8, Firefox, Opera, and Chrome and it works fine. <_<
Link to comment

Thanks for the explanation. Will install it tomorrow. Also, is their anyway to find duplicate register members from the same IP even though user's doesn't have logged on? Because your application will find duplicate members if user is visiting forum. How can I find old duplicate accounts?

Link to comment

Thanks for the explanation. Will install it tomorrow. Also, is their anyway to find duplicate register members from the same IP even though user's doesn't have logged on? Because your application will find duplicate members if user is visiting forum. How can I find old duplicate accounts?



For the app to work, a visitor must have a member_id, which obviously is the case for members only. A newly registered member gets a member_id as soon as they finish the registration process, so that it the moment the app will log their id for the first time.

I don't know how it could be expanded to work with non-members, but anyway even if it could, wouldn't that mean that it'd perceive all guests as duplicates too? :rolleyes:
Link to comment

I found that I didn't have the hook points in my skin, so I had to add them to get the application working, but now it is, its certainly picking people up although yet to find a duplicate.

The hook should show in skin_global -> globalTemplate after the end of the if statement labeled includeLightboxDoReal, so I had to replace

<if test="$this->settings['do_include_lightbox_real']">

with

<if test="includeLightboxDoReal:|:$this->settings['do_include_lightbox_real']">

Link to comment

I found that I didn't have the hook points in my skin, so I had to add them to get the application working, but now it is, its certainly picking people up although yet to find a duplicate.



The hook should show in skin_global -> globalTemplate after the end of the if statement labeled includeLightboxDoReal, so I had to replace

<if test="$this->settings['do_include_lightbox_real']">

with

<if test="includeLightboxDoReal:|:$this->settings['do_include_lightbox_real']">




Now it works... But no duplicates as of yet. Let
Link to comment

For the app to work, a visitor must have a member_id, which obviously is the case for members only. A newly registered member gets a member_id as soon as they finish the registration process, so that it the moment the app will log their id for the first time.



I don't know how it could be expanded to work with non-members, but anyway even if it could, wouldn't that mean that it'd perceive all guests as duplicates too? :rolleyes:




no no I think i explained it badly. Here is what I am trying to do:

We have like 2100 members on forum. Now few of them made duplicate accounts in past. But if I use your mod I will have to wait till they get member_id. What I am asking is how can I find duplicate accounts for old register members based on IP?
Link to comment

I found that I didn't have the hook points in my skin, so I had to add them to get the application working, but now it is, its certainly picking people up although yet to find a duplicate.



The hook should show in skin_global -> globalTemplate after the end of the if statement labeled includeLightboxDoReal, so I had to replace

<if test="$this->settings['do_include_lightbox_real']">

with

<if test="includeLightboxDoReal:|:$this->settings['do_include_lightbox_real']">




Some skins don't have either one of those statements, midnight glow is one of those skins which doesn't include either of those if statements in the GlobalTemplate.:blink:
Link to comment

Some skins don't have either one of those statements, midnight glow is one of those skins which doesn't include either of those if statements in the GlobalTemplate.:blink:



Yea, some skins may not have this alias, however it's the best place to hook the skin bit.

So I'm afraid the ones who don't have it, must add it manually. Basically, if the whole if is missing, the original if looks like this:

				{$footer_items['copyright']}

			</div>

			{$stats['task']}

			<if test="includeLightboxDoReal:|:$this->settings['do_include_lightbox_real']">

				{parse template="include_lightbox_real" group="global" params=""}

			</if>

		</div>

	</body>

</html>



As you see, it's right above the end of the page in ACP > Look & Feel > Manage Skin Sets & Templates > Global Templates > globalTemplate

Link to comment

I've been testing this for a few days now, it works well.

The only problem I have had was when I was using IE to try it out and I got an adobe flash error message which forced IE to close.

I didnt have time to grab a screen shot sadly.

Hope if this is a genuine bug it can be sorted out.

Link to comment

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...