• Content count

  • Joined

  • Last visited


About PrinceOfAbyss

  • Rank
    Needs Serious Help
  • Birthday 04/27/1979

IPS Marketplace

  • Resources Contributor Total file submissions: 4

Profile Information

  • Gender Male

Recent Profile Visitors

23,920 profile views

PrinceOfAbyss's Activity

  1. PrinceOfAbyss added a record in IPS Extras   

    Welcome to the IPS UTF8 Conversion utility (v1.1.10)
    The database is set to UTF-8 and all tables are UTF-8 but 149 table(s) have incorrect collations and need fixing.
    [f] Enter 'f' to fix table and field collations (RECOMMENDED)
    [y] Enter 'y' to perform a full conversion
    [x] Enter 'x' to exit the conversion
    Running now. This can take a while to complete...

    Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_unicode_ci, MODIFY where VARCH' at line 1
    File: /system/Db/Db.php
    Line: 186
    • 0 replies
  2. PrinceOfAbyss added a record in IPS Extras   

    [UTF8 1.1.9] unexpected T_STRING in /..../cli.php on line 18
    <user>@<domain> [~/public_html/community/utf8convert]# php cli.php

    Warning: Unexpected character in input:  '\' (ASCII=92) state=1 in /home/<user>/public_html/community/utf8convert/cli.php on line 18

    Warning: Unexpected character in input:  '\' (ASCII=92) state=1 in /home/<user>/public_html/community/utf8convert/cli.php on line 18

    Parse error: syntax error, unexpected T_STRING in /home/<user>/public_html/community/utf8convert/cli.php on line 18

    • 0 replies
  3. PrinceOfAbyss added a post in a topic: Clear bug not accepted as a bug...   

    A bug is when something does not work as intended. On the other hand, if something works as intended, it can't be a bug, can it?

    Both the above talk about the developer's intention. The user can judge that, but technically it can't be perceived as a bug.

    And anyway, how I wish all our problems summed up to the where the cursor stands when we quote something... :P
  4. PrinceOfAbyss added a comment: "Also check secondary groups" checkbox when unchecked doesn't revert the inclusion   

    In admin/applications/members/sources/adminSearch.php, line 205
    $include_secondary = $this->request['f_inc_secondary'] ? 1 : 0; to
    $include_secondary = $_POST['f_inc_secondary'] ? 1 : 0; fixes the bug. :)
  5. PrinceOfAbyss added a comment: "Also check secondary groups" checkbox when unchecked doesn't revert the inclusion   

    I'm talking about the Member Search form in ACP that appears when you click the cogwheel button. :)
  6. PrinceOfAbyss added a record in IP.Board   

    "Also check secondary groups" checkbox when unchecked doesn't revert the inclusion
    In Member Search form, when you check the option Also check secondary groups it correctly includes members with the specified group in their secondary groups.
    When, you uncheck it however, it doesn't update the returned members.
    • 0 replies
  7. PrinceOfAbyss added a comment on a blog entry: User Geolocation Restriction v1.1.0   

    His country is determined by looking up his IP address. It has nothing to do with any browser-specific privacy measures. Do you have any members in your community with the ip_address field empty in members table?
    Indeed, I agree there are proxies to use, but the app detects those as well, and gives you the option to block them as well among all other countries.
    If you are interested, I can PM you my community's URL, and if you make it to register an account there, I'll give you a license for free. ;)
  8. PrinceOfAbyss added a blog entry in IPS Marketplace Blog   

    User Geolocation Restriction v1.1.0
    User Geolocation Restriction (henceforth UGR) is an advanced tool that offers control over access and/or new registrations to your community based on the location of your visitors. Whether you run a strictly localized community or you want to counterfeit spammers or you simply want to monitor your users' locations, UGR will prove itself as a great asset in your hands.

    Access and registration control: Spamwise, it is no secret that the vast majority of spammers originate more or less from a handful of specific countries. Prohibiting new registrations to visitors from those countries or at least allowing the registrations but automatically banning the members for future review or even, as an extreme measure, completely prohibiting access to them is by itself a very effective way to counterfeit spamming. Of course some legitimate members may be lost with that practice, but for the sake of a spam-free community they can be considered as collateral damage.

    Application overview: The overview page in UGR v1.0.0 contained a great amount of information, making the interface a bit cluttered. This has changed in v1.1.0. It now displays a small, interactive pie chart powered by Google Charts, with no legend that would consume extra space. Instead, population data is displayed upon hovering with the mouse over each slice of the pie. Additionally, only Top 5 statistics are displayed on the side column for the rest of the information gathered by the application (leaving the rest of it available in other sections of the application).

    Location discovery: This is the tool that an admin can use to periodically, manually re-scan each member's location. It is also used when the application is installed for the first time and the locations map of your members needs to be built. Then, during each new registration, the location of the new member is automatically scanned, and stored in the system. So, unless instructed by the application, there is no specific reason to periodically re-scan your members' locations. The locations map is again powered by Google Charts and displays population data upon hovering with the mouse over each region of the map.

    Invitations: There are always exceptions that prove the rule, so UGR v1.1.0 offers the ability to invite members originating even from blacklisted locations allowing them to register an account to your community. This can be achieved through an easy-to-use form where you simply fill in an e-mail address that the visitor will use (prior contact between the admin and the visitor is required). The system then sends an informative email to that email address with further instructions. It is also worth mentioning that a task takes care of deleting unused invitations after a specified number of days (configurable in the application's settings).

    IP Lookups: Detailed information about your members' IP addresses is available in the Members section (will be presented later). But an admin may need to check any other specific IP address as well for a number of reasons. In UGR v1.1.0, this is possible in this section. You are presented with a form where you fill in an IP address and the system returns any information available for it. Additionally, if the coordinates that correspond to that IP address are available, a Google Map is displayed pointing to the spot defined by those coordinates.

    Integration in Members section: UGR v1.1.0 integrates very well with your Members section in ACP. More specifically, it adds a neat hovercard with detailed information about your members' IP addresses in all four locations where their IP is displayed (single member page, members list, incomplete members list and validating members list). The information contains their country, city, ISP, geographical coordinates, etc. Additionally, the advanced Member Search form is greatly extended by UGR. Especially in v1.1.0 this is implemented in a very unique way, allowing the admin to actually search for specific locations (or, for all locations but those specifically checked).

    Detailed statistics: In UGR v1.1.0, a new section was added to relieve the clutter of Overview page. This is the Statistics section, where detailed lists are displayed for the subsections Population statistics (each location and the number of members originating from it), Denied Access statistics (the number of access denials performed for each location), Denied Registrations statistics (the number of registration denials performed for each location) and Sent Invitations statistics (the number of invitations sent to each location - determined after the visitor makes use of the invitation).

    Logged actions: UGR v1.1.0 logs every action performed either automatically by the system, or manually by an admin. So, each access denial, registration denial, registration (from a blacklisted location) that ended in banning the new member (according to your settings) is logged. However, as those actions are performed by the system and are not admin initiated, the system groups them under Deleted admin. Additionally, any invitation sent to an email address by an admin is also logged.

    Settings: Here you can set the settings of the application to tailor it to the needs of your community.

    TOR network detection: Lately, a new privacy tool has been provided to users of the Internet. That is TOR network, which directs Internet traffic through a free, worldwide volunteer network consisting of thousands of relays to conceal a user's location or usage from anyone conducting network surveillance or traffic analysis. Unfortunately, when this technology falls into the hands of users with malicious intentions, it can help them create havoc to your community allowing them to create multiple accounts, etc. UGR v1.1.0 takes care of this to some degree by comparing members' IP addresses against a list of IP addresses that are known to be part of the TOR network.

    Installation process: The installation of the applications is pretty straight-forward and similar to the installation of any other application for IP.Board. You simply go to ACP > System > Applications & Modules > Manage Applications & Modules. There, you click on the prompt button on the narrow right column to install the application.

    API authentication: If you are upgrading from v1.0.0, you do not need to perform what is described here. If, however, you are installing the application for the first time, you will have to authenticate yourself to the Geolocation API, which is queried by the application, before you can make use of its features. Failing to do so will display a warning message and the application will not function. In order to authenticate yourself to the Geolocation API, you simply have to fill your IPS member ID in the form mentioned in the application's settings or in the warning message mentioned above. Your IPS member ID is the number followed by your name in the URL when viewing your profile page in this community. Eg. my profile page is http://community.inv...-princeofabyss/ , so my member ID is 107076. Once authenticated, you will be given a key that you will have to type in the appropriate setting of the application.

    Changelog in:
    Version 1.1.0 Split the list of locations to control access and/or registrations into two lists, one for access control and one for registration control Added detection of TOR network IP's Modified the advanced Member Search form integration to search by specific locations Added logging functionality to every action performed by the application Added the ability to invite members originating from blacklisted locations Completely re-designed the interface of the application making it more functional and aesthetically pleasing Added a tool to lookup even "external" IP addresses (not related to your members)
    Initial release

    [*] Version 1.0.0

    Some interesting stats taken from my community where UGR runs since March 2012 until today (May 22, 2013):

    Total spammer registrations prevented: 155,030

    Top 15 spammer countries - Number of spammer registrations prevented: China - 47,744 registration attempts prevented United States - 21,876 registration attempts prevented Russian Federation - 18,165 registration attempts prevented Ukraine - 16,802 registration attempts prevented Poland - 7,838 registration attempts prevented France - 5,927 registration attempts prevented Germany - 4,661 registration attempts prevented Sweden - 4,643 registration attempts prevented United Kingdom - 3,760 registration attempts prevented Netherlands - 2,826 registration attempts prevented Latvia - 2,722 registration attempts prevented Thailand - 2,138 registration attempts prevented Luxembourg - 2,096 registration attempts prevented Romania - 1,417 registration attempts prevented Moldova, Republic of - 1,048 registration attempts prevented

    Disclaimer: My certainty about the legitimacy of the above numbers comes from the fact that my community is strictly localized, so I doubt any member coming from those countries wanted to become an active member of it for any reason other than for spamming.

    Visit the submission in Marketplace
  9. PrinceOfAbyss added a comment: App upgrader wrong fix links   

    Alright, indeed adding a board_url besides base_url that was already in my conf_global, fixed the issue.
    Thanks a lot Brandon, and sorry for the bug report.
  10. PrinceOfAbyss added a comment: App upgrader wrong fix links   

    I have a base_url defined Brandon.
    I'll update my conf_global and in case it doesn't fix the issue, I'll PM you some credentials to my forum to take a look if you want.
  11. PrinceOfAbyss added a record in IP.Board   

    App upgrader wrong fix links
    When upgrading an app, and there are (or the script thinks there are) error in a DB, the upgrader shows some links to fix the problem.
    The text of the links are:
    We have found problems with your database, and have listed them below. [link here]Would you like us to attempt to fix them for you?[up to here]
    And then: [link here]Click here to fix this table[up to here], or you can run the following queries manually:
    The code is in cp_skin_diagnostics.php,
    around line 397 (for the Click here to fix... links)[code=auto:0]                 <a href='{$this->settings['base_url']}{$this->form_code}&amp;section=diagnostics&amp;do=dbchecker&amp;fix={$r['key']}'>{$this->lang->words['d_iauto']}</a>{$this->lang->words['d_iman']}[/code]
    Should become (or at least it works):[code=auto:0] <a href='{$this->form_code}&amp;section=diagnostics&amp;do=dbchecker&amp;fix={$r['key']}'>{$this->lang->words['d_iauto']}</a>{$this->lang->words['d_iman']} [/code]
    The problem actually is that the link that is supposed to fix the DB problem lacks the <forum folder> part.
    Ie you are in
    and the fix link links to
    [url=""][/url]<admin>/upgrade/index.php?app=upgrade&s=<session>&section=upgrade&do=checkdb&fix=<some table>
    The Would you like us .... link at the top that is supposed to fix all errors at once, again points to:
    and is created in line 307 of the same file.[code=auto:0]     {$this->lang->words['d_ifixall']} <a href='{$this->settings['base_url']}{$this->form_code}&amp;section=diagnostics&amp;do=dbchecker&amp;fix=all'>{$this->lang->words['d_ifixall_link']}</a>[/code]
    Again, deleting the {$this->settings['base_url']} part fixes the problem.
    • 0 replies
  12. PrinceOfAbyss added a post in a topic: Not getting email notifications from "Bug Tracker"   

    This should be made a little more clear though that it refers to Bug Tracker.

    Mine was unchecked too, and I wasn't getting notifications either, but I was too lazy to ask... :P
  13. PrinceOfAbyss added a comment on a file: Duplicate Members Logger   

    Thanks a lot for taking the time to write all this feedback.
    It makes me very happy that an app, that started as a necessity to have a simple tool to deal with frauds for my own community, has evolved into an app that proves useful for many more communities. :)
  14. PrinceOfAbyss added a post in a topic: IPS revoking licenses conspiracy... (not true)   

    Deleted? I've seen many rude and offensive posts that still exist here. I haven't seen any posts disappearing, I just haven't come across them (reading something and the next moment it's not there anymore).
  15. PrinceOfAbyss added a record in IP.Board   

    Very LONG SQL query brakes on Next page
    I ran a very long SELECT query in the toolbox trying to find members with 1000 specific email addresses. When I clicked the Next page I received the following error:

    [size=5][b]Request-URI Too Large[/b][/size]
    The requested URL's length exceeds the capacity limit for this server.

    I know I can add a LIMIT 0,1000 at the end of the query to display them all at once, because as it is right now, the query goes in the querystring for the next page, but you might want to include the actual query in a hidden forum field etc...?
    • 0 replies