[ADMN/WEB] OKB3 - Bulletin Board Bridge - Now on BukkitDev! [1337]

Discussion in 'Inactive/Unsupported Plugins' started by Kalman Olah, Jun 2, 2011.

  1. Offline

    Kalman Olah

  2. Offline

    Kalman Olah

    No it doesn't. If OKB3 isn't enabled, you most likely have an issue with your config.yml file. Post it, and post a server log, and any errors you may have.
     
  3. Offline

    Riggedid

    Yes sir. :)

    Now I haven't fully edited it, I just wanted to see if the mod would at least let me use commands with that and then try to go on from there, is it because I haven't fully configured the groups?

    Code:
    mode: normal
    mysql-connection-info:
        mysql-host: localhost
        mysql-user: thegreat_mybb1
        mysql-password: (removed)
        mysql-database-name: thegreat_mybb1
    old-school-mode:
        usertable: user_table
        minecraftname-field: mine_user
        rank-field: rank_field
        enable-multiple-tables: 'false'
        multitable:
            secondtable: mine_table
            useridfield-in-secondtable: user_id_field
            useridfield-in-usertable: user_id_field
    normal-mode:
        forum: mybb
        type1:
            usertable: user_table
            username-field: username_field
            userpassword-field: user_pass_field
            rank-field: rank_field
        type2:
            usertable: user_table
            username-field: username_field
            userpassword-field: user_pass_field
            rank-field: rank_field
            location-of-passgenphp: http://(removed)/forums/passgen.php
            password-set-in-config-inc-php: (removed)
        type3:
            usertable: user_table
            rank-field: rank_field
            username-field: username_field
            password-field: pass_field
            secondtable: second_table
            useridfield-in-usertable: user_id_field
            useridfield-in-secondtable: user_id_field
        type4:
            usertable: user_table
            username-field: username
            password-field: mine_user
            rank-field: rank_field
            location-of-passgenphp: http://(removed)/forums/passgen.php
            password-set-in-config-inc-php: (removed)
    world-groups:
        enable-multiworld-groups: 'false'
        default:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
        exampleworld1:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
        exampleworld2:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
    whitelist:
        enable-whitelist: 'false'
        global:
            use-as-blacklist: 'false'
            kick-message: This is the message a user will see if their group isn't whitelisted.
            groups:
                '1': 'true'
                '2': 'false'
    nickname-sync:
        enable-nickname-syncing: 'false'
        nickname-field-in-usertable: ''
    forum-banning:
        is-server-ban-too: 'true'
        banned-forum-user-rank-id: '0'
        unbanned-forum-user-rank-id: '10'
        ban-message: You have been banned on the Website and Server.
    promotion-tracks:
        '1': '3'
        '2': '5'
        '3': '16'
    forum-ranks:
        Admin: '1'
        Registered: '0'
        Moderator: '2'
    misc:
        mysql-ping-interval: '30'
    
    It says it can't connect to the DB... But all the info is correct? :(

    Code:
    2011-08-12 20:20:33 [INFO] [OKB3] Attempting to enable OKB3 v2.5.17 by Kalman Olah...
    2011-08-12 20:20:33 [INFO] [OKB3] Initiating auto-update...
    2011-08-12 20:20:33 [INFO] [OKB3] You already have the latest version of OKB3.
    2011-08-12 20:20:33 [INFO] [OKB3] Successfully hooked into Permissions plugin.
    2011-08-12 20:20:33 [INFO] Loaded EssentialsChat build 2.5.6 by essentials team
    2011-08-12 20:20:33 [INFO] [OKB3] Hooked into EssentialsChat.
    2011-08-12 20:20:33 [INFO] [OKB3] Attempting to load configuration file...
    2011-08-12 20:20:33 [INFO] [OKB3] Configuration file successfully loaded.
    2011-08-12 20:20:33 [INFO] [OKB3] [DB] Initializing MySQL connection...
    2011-08-12 20:20:33 [SEVERE] [OKB3] SQLException! Access denied for user 'thegreat_mybb1'@'localhost' (using password: YES)
    2011-08-12 20:20:33 [INFO] [OKB3] [DB] MySQL connection failed!
    2011-08-12 20:20:33 [INFO] [OKB3] [DB] Loading database...
    2011-08-12 20:20:33 [INFO] [OKB3] Error connecting to MySQL DB, OKB3 is being disabled...
    2011-08-12 20:20:33 [INFO] [OKB3] Attempting to disable OKB3...
    2011-08-12 20:20:33 [INFO] [OKB3] [DB] SQLite connection closed.
    2011-08-12 20:20:33 [INFO] [OKB3] Terminating worker threads...
    2011-08-12 20:20:33 [INFO] [OKB3] OKB3 disabled successfully.
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 15, 2016
  4. Offline

    Cosmic Break

    i figured it out, i needed to enable multiple tables
     
  5. Offline

    Kalman Olah

    Yeah :)

    Is your MySQL server hosted on the same machine as your minecraft server, or a different one?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 15, 2016
  6. Offline

    Riggedid

    No, which is why I asked you that quick question. :S
    I edited the config... I left only type 1 since it says it's for mybb... But I don't understand how they're supposed to connect without being on the same server? :confused:
    So would I have to use another type?

    Code:
    mode: normal
    mysql-connection-info:
        mysql-host: localhost
        mysql-user: thegreat_mybb1
        mysql-password: icup123
        mysql-database-name: thegreat_mybb1
    old-school-mode:
        usertable: user_table
        minecraftname-field: mine_user
        rank-field: rank_field
        enable-multiple-tables: 'false'
        multitable:
            secondtable: mine_table
            useridfield-in-secondtable: user_id_field
            useridfield-in-usertable: user_id_field
    normal-mode:
        forum: mybb
        type1:
            usertable: mybb_users
            username-field: mybb_username
            userpassword-field: mybb_password
            rank-field: mybb_usergroup
    world-groups:
        enable-multiworld-groups: 'false'
        default:
            groups:
                '4': Admin
                '2': Builder
        exampleworld1:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
        exampleworld2:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
    whitelist:
        enable-whitelist: 'false'
        global:
            use-as-blacklist: 'false'
            kick-message: This is the message a user will see if their group isn't whitelisted.
            groups:
                '1': 'true'
                '2': 'false'
    nickname-sync:
        enable-nickname-syncing: 'false'
        nickname-field-in-usertable: ''
    forum-banning:
        is-server-ban-too: 'true'
        banned-forum-user-rank-id: '0'
        unbanned-forum-user-rank-id: '10'
        ban-message: You have been banned on the Website and Server.
    promotion-tracks:
        '1': '3'
        '2': '5'
        '3': '16'
    forum-ranks:
        Admin: '4'
        Registered: '2'
        Moderator: '3'
    misc:
        mysql-ping-interval: '30'
    
     
  7. Offline

    Kalman Olah

    Fix your mysql-host, first of all. It's incorrect.
     
  8. Offline

    excalibr23

    Is there anyway to make it so my previous whitelist still works and then add this to it? I would really like that, heh.
     
  9. Offline

    CappyT

    I have a big problem.
    My host (hosting24) provide only 10 connection per user on mysql database...
    Now... with the forum i've resolved doing a multiple-user access.

    But i think 10 connections per user cause this:

    Code:
    13.08 09:01:20 [Server] WARNING [OKB3] Error at SQL Query: No operations allowed after connection closed.Connection was implicitly closed by the driver.
    13.08 09:00:54 [Server] SEVERE     at java.lang.Thread.run(Thread.java:722)
    13.08 09:00:54 [Server] SEVERE     at me.kalmanolah.okb3.OKRunnable.run(OKRunnable.java:82)
    13.08 09:00:54 [Server] SEVERE java.lang.NullPointerException
    13.08 09:00:54 [Exception] Exception in thread "Thread-402489"
    13.08 09:00:54 [Exception] Server exception, restarting if server doesn't respond
    13.08 09:00:54 [Server] WARNING [OKB3] Error at SQL Query: No operations allowed after connection closed.Connection was implicitly closed by the driver.
    The plugin works fine for an hour, then, get this error. and only 2 players logged in.
    how could i set the mysql-ping-interval? high or lower?

    The plugin have also a dedicated user on mysql, so have up to 10 connection.

    Thank you.

    p.s. Is this plugin open suorce? If it is, where are the dev. site?
     
  10. Offline

    microskies

    @Kalman Olah, does your plugin have a tendency to completely delete the permissions' "groups.yml" file? I'm not blaming the plugin, I'm just trying to get to the root of the problem, as i had a MASSIVE scare when it just went blank... Lukcily i had a local copy of it :D

    But anyway, just wondering if this problem has ever come up before, or if it's something else :D
     
  11. Offline

    Cosmic Break

    11:42:49 [WARNING] [OKB3] Error at SQL Query: No operations allowed after connec
    tion closed.Connection was implicitly closed by the driver.

    I get that alot even though mySQL does work and is connecting just fine.
     
  12. Offline

    Kalman Olah

    Err... My plugin does not interface with the Permissions groups.yml directly. It interfaces with Permissions, which in turn carries out all operations, none of which include deleting your groups.yml :).

    Updated config.yml?
     
  13. Offline

    microskies

    Hmm again another problem:

    Code:
    2011-08-13 11:51:30 [SEVERE] [OKB3] SQLException! Communications link failure
    
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    2011-08-13 11:51:30 [WARNING] [OKB3] Error at SQL Query: No operations allowed after connection closed.Connection was implicitly closed by the driver.
    2011-08-13 11:51:30 [SEVERE] Exception in thread "Thread-94"
    2011-08-13 11:51:30 [SEVERE] java.lang.NullPointerException
    2011-08-13 11:51:30 [SEVERE]     at me.kalmanolah.okb3.OKRunnable.run(OKRunnable.java:82)
    2011-08-13 11:51:30 [SEVERE]     at java.lang.Thread.run(Unknown Source)
    2011-08-13 11:51:35 [INFO] [OKB3] [BRIDGE] Iyomia's ranks synced.
    2011-08-13 11:51:39 [INFO] Connection reset
    2011-08-13 11:51:39 [SEVERE] java.net.SocketException: Socket closed
    2011-08-13 11:51:39 [INFO] Microskies lost connection: disconnect.quitting
    2011-08-13 11:51:39 [SEVERE]     at java.net.SocketOutputStream.socketWrite(Unknown Source)
    2011-08-13 11:51:39 [SEVERE]     at java.net.SocketOutputStream.write(Unknown Source)
    2011-08-13 11:51:39 [SEVERE]     at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
    2011-08-13 11:51:39 [SEVERE]     at java.io.BufferedOutputStream.flush(Unknown Source)
    2011-08-13 11:51:39 [SEVERE]     at java.io.DataOutputStream.flush(Unknown Source)
    2011-08-13 11:51:39 [SEVERE]     at net.minecraft.server.NetworkWriterThread.run(SourceFile:116)

    I mean, i wouldn't mind that it isn;t working/connecting properly, but it;s just the fact that when this happens, EVERY TIME the server basically shuts down. It is still "running" but you can;t log on, and if you were on you would lag out and finally get an error saying "Exception:Connection Reset" or something to that effect.

    I have checked all the DB details (in the config) and they;re all correct, i have even had a few testers change thier rank through the forums (as they're supposed to) so it can;t be the database details. Perhaps it may be somethign to do with Hosting24, and the restriction that is mentioned above. But it was working fine, for a few hours thefirst time, until it started doing this.

    Bukkit :b1000
    Perms: 3.1.6
    MySQL:5.0.92-Community

    Don;t knwo what other details to put...
     
  14. Offline

    Unlucky4ever

    Here is a suggestion:
    Make it so it cleans the usernames so it's not case sensitive

    Because some people on my server register with say "Unlucky4ever" when their username in-game is "unlucky4ever" and it won't read it.
     
  15. Offline

    neen

    Does this work with Superperms/PermissionsBukkit yet?
     
  16. Offline

    bocaj812

    No it does not, due to lack of api.
     
  17. Offline

    neen

    I wonder if it works with SuperpermsBridge. That's supposed to bridge the gap between Permissions 3.x and Superperms. Anyone know?
     
  18. Offline

    Kingadams

    Is there a way to store the persons Minecraft name in the forums other than doing it using nicknames?
     
  19. Offline

    microskies

    Goddamn, connection issues with the MySQL server again, but just in case its somethign to do with the plugins, heres what the server pooped out:

    Code:
    2011-08-14 18:51:04 [SEVERE] com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
    
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    2011-08-14 18:51:04 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    2011-08-14 18:51:04 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.lang.reflect.Constructor.newInstance(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2334)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2371)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2163)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
    2011-08-14 18:51:04 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    2011-08-14 18:51:04 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.lang.reflect.Constructor.newInstance(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
    2011-08-14 18:51:04 [SEVERE]     at java.sql.DriverManager.getConnection(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.sql.DriverManager.getConnection(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at com.imineserver.thekris1234.SQLQuery.sqlCon(SQLQuery.java:90)
    2011-08-14 18:51:04 [SEVERE]     at com.imineserver.thekris1234.SQLQuery.checkTables(SQLQuery.java:17)
    2011-08-14 18:51:04 [SEVERE]     at com.imineserver.thekris1234.phpBBManager.onEnable(phpBBManager.java:77)
    2011-08-14 18:51:04 [SEVERE]     at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:126)
    2011-08-14 18:51:04 [SEVERE]     at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:878)
    2011-08-14 18:51:04 [SEVERE]     at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:272)
    2011-08-14 18:51:04 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:162)
    2011-08-14 18:51:04 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:146)
    2011-08-14 18:51:04 [SEVERE]     at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:284)
    2011-08-14 18:51:04 [SEVERE]     at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:271)
    2011-08-14 18:51:04 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:148)
    2011-08-14 18:51:04 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    2011-08-14 18:51:04 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-14 18:51:04 [SEVERE] Caused by: java.net.ConnectException: Connection timed out: connect
    2011-08-14 18:51:04 [SEVERE]     at java.net.PlainSocketImpl.socketConnect(Native Method)
    2011-08-14 18:51:04 [SEVERE]     at java.net.PlainSocketImpl.doConnect(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.PlainSocketImpl.connect(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.SocksSocketImpl.connect(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.Socket.connect(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.Socket.connect(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.Socket.<init>(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at java.net.Socket.<init>(Unknown Source)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:254)
    2011-08-14 18:51:04 [SEVERE]     at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
    2011-08-14 18:51:04 [SEVERE]     ... 27 more
     
  20. Offline

    Cosmic Break

    i hate that the smallest little hiccup of only a few milliseconds can make this plugin go from its all good to OMFG WHY IS THIS HAPPENING!?!

    is there anyway to fix that?
     
  21. Offline

    Chrisspitz

    Hey as usual.
    Plugin is working fine and all just wanted to say a few things:
    Im still running 2.5.16
    When a player join that isn't whitelisted everyone in the server gets the new player joined message and it acts as if the player has connected, but they were kicked because they still need to register... I was wondering if you could make it so it doesn't display that they connected etc. in chat because it confuses my players which are on the server making them think that a new player has joined.

    Thanks in advance for your help :)
     
  22. Offline

    Kalman Olah

    Try 2.5.17. If the problem still exists, PM me or something :).
     
  23. Will you support permissionsbukkit (or similar) in the future?
     
  24. Offline

    Kalman Olah

    As soon as they add an API for changing groups :).
     
  25. Offline

    microskies

    Please could i have a suggestion of what to do with my error if i can do anything? I'm supposed to be opening my server today, after 2 weeks of delays, and this is pretty much a plugin i depend on, for users to get promoted form default rank without an admin being there :/
    Any help would be brilliant :)

    EDIT:
    Okay nevermind, i found out the server the database is on was disabled due to a DDoS attack... Sorry about that :D Although hosting 24 should really send that in an email...
     
  26. Offline

    Kalman Olah

    Glad you got it working. In the future you should just try to hit me up on IRC, the channel is in my signature :).
     
  27. Offline

    Chrisspitz

    Updated to 2.5.17 and the join messages are still showing up :O
    I would PM you but Bukkit Forums are being really slow at the moment overloaded I guess
     
  28. Offline

    patey

    getting a really wierd error...

    Code:
    2011-08-16 12:17:00 [INFO] [OKB3] Attempting to load configuration file...
    2011-08-16 12:17:00 [INFO] [OKB3] Configuration file successfully loaded.
    2011-08-16 12:17:00 [INFO] [OKB3] Error loading or creating configuration file, OKB3 is being disabled...
    its lying to me XD
    heres config

    Code:
    mode: normal
    mysql-connection-info:
        mysql-host: 192.168.2.11:3306
        mysql-user: Patey
        mysql-password: ******
        mysql-database-name: forums
    old-school-mode:
        usertable: user_table
        minecraftname-field: mine_user
        rank-field: rank_field
        enable-multiple-tables: 'false'
        multitable:
            secondtable: mine_table
            useridfield-in-secondtable: user_id_field
            useridfield-in-usertable: user_id_field
    normal-mode:
        forum: phpbb
        type1:
            usertable: user_table
            username-field: username_field
            userpassword-field: user_pass_field
            rank-field: rank_field
        type2:
            usertable: user_table
            username-field: username
            userpassword-field: user_password
            rank-field: user_rank
            location-of-passgenphp: 192.168.2.11/phpbb
            password-set-in-config-inc-php: *********
        type3:
            usertable: user_table
            rank-field: rank_field
            username-field: username_field
            password-field: pass_field
            secondtable: second_table
            useridfield-in-usertable: user_id_field
            useridfield-in-secondtable: user_id_field
        type4:
            usertable: user_table
            username-field: username
            password-field: mine_user
            rank-field: rank_field
            location-of-passgenphp: http://yoursite.com/passgen.php
            password-set-in-config-inc-php: 12345pass
    world-groups:
        enable-multiworld-groups: 'false'
        default:
            groups:
                '1': Admin
                '2': mod
                '3': Users
                '5': banned
        exampleworld1:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
        exampleworld2:
            groups:
                '1': ExampleGroup1
                '2': ExampleGroup2
    whitelist:
        enable-whitelist: 'true'
        global:
            use-as-blacklist: 'false'
            kick-message: Please enter serverip as internet address and reg on forums!
            groups:
                '1': 'true'
                '2': 'true'
                '3': 'true'
                '5': 'false'
    nickname-sync:
        enable-nickname-syncing: 'false'
        nickname-field-in-usertable: ''
    forum-banning:
        is-server-ban-too: 'true'
        banned-forum-user-rank-id: '5'
        unbanned-forum-user-rank-id: '3'
        ban-message: You're banned!
    promotion-tracks:
        '1': '3'
        '2': '5'
        '3': '16'
    forum-ranks:
        Admin: '1'
        mod: '2'
        Users: '3'
        banned: '5'
    misc:
        mysql-ping-interval: '30'
    


    i would also like to ask if i have it configured right to do the following:
    i want only people registered at forums to be able to join server,so its whitelisted for all forum groups. when kicked cause not registered- i want it to say to enter server ip and go to forums and register, this right?



    also- how does it work for synchronization? do i have to resync players everytime somone registers or can it do this automatically?
    ex. is mysql ping checking users?
     
  29. Offline

    Kalman Olah

    You'll want to run OKB3 in old-school mode to accomplish that. It's either that, or letting anyone join the server, since normal requires you to do /sync before you get your rank.
    Your passgen.php location is wrong. It should point to the "passgen.php". E.g.: http://localhost/passgen.php.
    Change mysql-host to "localhost"
     
  30. Offline

    patey

    ok, so for mode i'd put old-school?
    and mysql hosts from a secondary computer on network so it has to be 192.168.2.11

    oh and what do i put in minecraftname-field?

    edit- does it still need passgen.php?
     
  31. Offline

    Unlucky4ever

     

Share This Page