Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Rank Ordering Details »»
Rank Ordering
Version: 1.2, by MarkFL MarkFL is offline
Developer Last Online: Jun 2020 Show Printable Version Email this Page

Category: Administrative and Maintenance Tools - Version: 4.x.x Rating:
Released: 07-28-2015 Last Update: 05-24-2017 Installs: 50
DB Changes
Code Changes Translations  
No support by the author.

This product will, upon installation, add a column to your "ranks" table labeled "rankorder" and will edit your "/admincp/ranks.php" and "/includes/functions_ranks.php" files so that you may assign display ordering for your defined ranks. The original code is stored as "/admincp/ranks_orig.php" and "/includes/functions_ranks_orig.php" respectively. When uninstalled, your database and files are restored to their original condition.

This add-on utilizes code written by DragonBlade and n8td as posted here:

where do I change the order of rank images?

This add-on simply automates all of the file edits and the database change into one easy step.

When you go to your "User Rank Manager" you will see a new field titled "Rank Order" associated with each defined rank:



And when you edit a rank, you will find a new field on the form into which you can set the rank order:



Rank ordering can be used to control the order in which your various ranks are displayed in user postbits and profile pages. The smaller the number, the higher in the stack a rank will be displayed.

For example, suppose you have a rank for the forum owner(s) and you want this to be on top regardless of the other ranks the owners might have. You could assign this rank a rank order of 0. Then you may have several ranks which indicate a user's position in your staff, such as administrators, global moderators, forum moderators, etc. No one user would have more than 1 of these ranks, and so you could assign these a rank order of 1. This way any of the owners who are also an admin/global mod/mod would have the site owner rank on top and then their staff position rank next.

In this manner, you can assign rank orders to completely control the order in which all of your ranks are displayed:



Note: Once you edit your ranks to assign the rank order, you must run "update user titles and ranks" in order for the ordering to take effect.

Update: version 1.1
  • Added missed file edit which allows for new ranks to be successfully added after installing this add-on.

Update: version 1.2
  • Reads path to admin control panel folder from config.php.

Note: If you have not renamed your "admincp" folder, then you don't need to update to v. 1.2. If you edited the v. 1.1 .XML file to use your renamed "admincp" folder, then you also don't need to upgrade to v. 1.2. If you do decide to upgrade to v. 1.2 anyway, then you need to uninstall v. 1.1 first. If you wish to keep the rank ordering you've already defined, then you need to edit the product's uninstall code to remove the following db query:

PHP Code:
// Remove "rankorder" column from "ranks" table

$vbulletin->db->hide_errors();
$vbulletin->db->query_write("
    ALTER TABLE`" 
TABLE_PREFIX "ranks`
        DROP COLUMN rankorder
"
); 
To Install:

In AdminCP go to Plugins & Products -> Manage Products -> Add/Import Product.

Click on "Choose File" and browse to the product .xml file that was packaged in the .zip file.

Click "Import"

There are no settings to set, once installed, the product is active. :up:

Note: When updating your vB, please follow these steps after completing the upgrade:

First, delete the files "/includes/functions_ranks_orig.php" and "admincp/ranks_orig.php".

Next, edit the "Rank Ordering" product to remove the uninstall code completely and save it.

Then, uninstall the product.

Lastly, reinstall the product, and the new PHP files will be backed up and then edited, and you'll be back in business.

Support for this product can be found here:

Download Now

File Type: zip MarkFL - Rank Order v1.2.zip (2.6 KB, 82 views)

Screenshots

File Type: png rankorderlist.png (74.2 KB, 0 views)
File Type: jpg rankorderedit.jpg (46.3 KB, 0 views)
File Type: png rankorderpost.png (65.3 KB, 0 views)

Supporters / CoAuthors

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
3 благодарности(ей) от:
alcazarx, ELROBLE, midnz

Comments
  #52  
Old 02-06-2017, 08:14 PM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nothing in config.php that would suppress error logging.

grep error config.php returns:

Code:
| If you get any errors while attempting to connect to    |
	//	If any database errors occur, they will be emailed to the address specified here.
	//	Leave this blank to not send any emails when there is a database error.
	// may receive collation errors.  Ignore this setting unless you
What version of PHP are you running? Our server is running 5.5.9.
Reply With Quote
  #53  
Old 02-07-2017, 01:58 AM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Should this be? Two versions of the Install code? Version 1.0 appears complete. Version 1.1 is only a fragment. Not even sure where version 1.1 came from.
Reply With Quote
  #54  
Old 02-07-2017, 02:17 AM
MarkFL's Avatar
MarkFL MarkFL is offline
 
Join Date: Feb 2014
Location: St. Augustine, FL
Posts: 3,853
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Snowhog View Post
Should this be? Two versions of the Install code? Version 1.0 appears complete. Version 1.1 is only a fragment. Not even sure where version 1.1 came from.
Yes, that looks correct.

After I initially released version 1.0, I realized I missed a file edit, so the install code for version 1.1 catches that missing edit.
Reply With Quote
  #55  
Old 02-07-2017, 02:40 AM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thank you.

I have verified that folder and file permissions on the server are correct (didn't really think they weren't, but...)

The only thing I can come up with as to why this MOD isn't getting installed is either, the php commands are not correct (for our installation), or the relative path to the two files isn't correct. I find both possibilities rather unlikely given the author.

I can provide you with my SSH login credentials via separate PMs if you are still inclined to go in and look around. I would like to get this problem resolved so the MOD can actually get installed.
Reply With Quote
  #56  
Old 02-10-2017, 08:42 PM
sub_ubi sub_ubi is offline
 
Join Date: Dec 2004
Posts: 177
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Working well with 4.2.5 Beta 1 + PHP 7.0

Did an edit+replace on the xml file for my custom admincp, otherwise no issues.
Reply With Quote
Благодарность от:
MarkFL
  #57  
Old 02-10-2017, 09:24 PM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I wish that were true here. Still waiting for MarkFL to ascertain why it won't install on our Forum.
Reply With Quote
  #58  
Old 02-13-2017, 09:38 PM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The first part of the .xml instructions was executed properly.
Code:
$vbulletin->db->hide_errors();
$vbulletin->db->query_write("
	ALTER TABLE`" . TABLE_PREFIX . "ranks`
		ADD rankorder SMALLINT
");
The ranks database was altered to add rankorder.


But the remaining code isn't being executed, or is failing, as the two files: ranks.php and functions_ranks.php; are not being backed up or modified. This leaves me to believe that the (php ?) commands aren't correct (for us), or the permissions on the folders and/or .php files are wrong.

The folders containing ranks.php and functions_ranks.php are set with permissions 755 (rwxr-xr-x) and the .php files are set with permissions 644. I'm 99.999% confident that these are correct.

MarkFL@

I understand that you are quite busy at the moment, so I am more than willing to try and debug this installation issue on my own.

When the .xml file is executed, is it PHP that is running the code?
Reply With Quote
  #59  
Old 02-14-2017, 01:28 PM
MarkFL's Avatar
MarkFL MarkFL is offline
 
Join Date: Feb 2014
Location: St. Augustine, FL
Posts: 3,853
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hey Paul,

The only things I can think of that would prevent the files from being altered is either the folder permissions aren't correct, or the files are not located where they need to be. I have installed this product a multitude of times on many sites and never had any issues. However, none of these sites had the "admincp" folder renamed.

The install code is PHP, and I have used it on sites running PHP 5.2.x - 7.x.

Just to double check, before you install:
  1. Did you create a folder called "admincp" in the same folder your renamed "admincp" folder is located?
  2. Did you put a copy of your "ranks.php" file there?
  3. Ensure permissions of "admincp" folder is 0755 and permissions of "admincp/ranks.php" is 0644?
  4. After install, copy the files (the backup and the altered "ranks.php" file) in the "admincp" folder to your renamed "admincp" folder?
Reply With Quote
  #60  
Old 02-14-2017, 01:36 PM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes, I did that previously, but I'll repeat it again, making sure that the permissions on the created folder and the file put in it are as stated. I'll also ensure that the other file; functions_ranks.php has the indicated permissions.

I'll report back on the results.
Reply With Quote
Благодарность от:
MarkFL
  #61  
Old 02-14-2017, 03:34 PM
Snowhog's Avatar
Snowhog Snowhog is offline
 
Join Date: Oct 2011
Location: Andover, MN
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm sad to report that there was no success here. This is the first MOD that has failed to install on our Forum.

I verified the permissions on the created admincp folder, as well as the copy of ranks.php that was put in to it. I verified that the permissions on functions_ranks.php in the includes folder had the right permissions. The MOD simply doesn't get installed. Neither of the .php files gets backed up, and they don't get modified. The database does get the added field, and when I run the uninstall on the MOD, the database is updated to remove the added field. Everything else in the .xml doesn't work for me.

I'm still wondering if it's our version of PHP that is the issue.
Code:
php -v
PHP 5.5.9-1ubuntu4.20 (cli) (built: Oct  3 2016 13:00:37) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
I suggest this based only on the syntax of the file_get_contents and file_put_contents functions. Both utilize FILE_USE_INCLUDE_PATH, and according to php.net (Documentation):
Quote:
Example #2 Searching within the include_path

<?php
// <= PHP 5
$file = file_get_contents('./people.txt', true);
// > PHP 5
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
?>
this implies your version of PHP is greater than version 5.

When I start up PHP interactively (php -a) and execute:

$file = file_get_contents('./admincp/ranks.php', FILE_USE_INCLUDE_PATH);

I don't get any error message, but the contents of the $file variable doesn't appear to contain anything. When I execute:

echo $file

or

print $file

I only get the php prompt.

I won't ask you to spend any more time on this; unless you want to. I'm not going to try and manually modify the two files, as I don't have the knowledge to properly understand what the .xml is saying with regards how the two .php files are changed, and I don't want to make a mess of things.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:53 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.13251 seconds
  • Memory Usage 2,368KB
  • Queries Executed 29 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_code
  • (1)bbcode_php
  • (2)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (5)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (4)postbit_attachment
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete