vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Project Tools (https://vborg.vbsupport.ru/forumdisplay.php?f=266)
-   -   Display only latest version in issuelist queries (https://vborg.vbsupport.ru/showthread.php?t=252092)

farhad.khan 10-14-2010 06:23 PM

Display only latest version in issuelist queries
 
Hi,
We work with multiple versions within the same project and find it very daunting that the default issue list shows issues from all versions and all statuses.

We are trying to change it such that the default do=issuelist query does the following. Any help will be much appreciated.
1. Check for the latest version
2. Load only issues in the latest version and with status "any active"

Here's how far I've gone:
In project.php @ if ($_REQUEST['do'] == 'issuelist'), I could add the following
PHP Code:

  if (!empty($vbulletin->GPC['appliesversionid']))
        {
                if (
$vbulletin->GPC['appliesversionid'] == -1)
                {
                        
$version_filter = -1;
                }
                else
                {
                        
$type $vbulletin->GPC['appliesversionid'][0];
                        
$value intval(substr($vbulletin->GPC['appliesversionid'], 1));
                        if (
$type == 'g')
                        {
                                
$group_filter $value;
                        }
                        else
                        {
                                
$version_filter $value;
                        }
                }
        }
        else
        {
            
/***** Load latest version ******/
            /***** Apply version filter ******/
        


What I don't know is how to load the latest version and how to apply the filter.
The latest version could probably be found by doing the following (found frmo another post). But how do I apply the filter?

PHP Code:

$version $db->query_first("
  SELECT versionname 
  FROM mytable_pt_projectversion 
  WHERE projectid = 2 AND projectversiongroupid = 1 AND displayorder = 10;
"
); 


farhad.khan 10-16-2010 12:27 PM

Never mind, I think I know how to do this. I'll try it out and post my results here.

farhad.khan 10-22-2010 03:20 PM

Here's the code that worked to load only issues from the latest version in the issuelist by default.

It's a bit of a hack cause we shouldn't be modifying the variable $vbulletin->GPC['appliesversionid'], but it works!

PHP Code:

    if (empty($vbulletin->GPC['appliesversionid']))
    {
        
$version $db->query_first("SELECT projectversionid " .
                                            
"FROM pt_projectversion " .                                         
                                              
"WHERE projectid = $project " .
                                              
"ORDER BY effectiveorder DESC LIMIT 1");
          
          
$vbulletin->GPC['appliesversionid'] = "v".$version['projectversionid'];
    } 

The above should be placed just after the code below -
PHP Code:

if ($_REQUEST['do'] == 'issuelist')
{
    
$vbulletin->input->clean_array_gpc('r', array(
        
'projectid' => TYPE_UINT,
        
'issuetypeid' => TYPE_NOHTML,
        
'appliesversionid' => TYPE_NOHTML,
        
'issuestatusid' => TYPE_INT,
        
'pagenumber' => TYPE_UINT,
        
'sortfield' => TYPE_NOHTML,
        
'sortorder' => TYPE_NOHTML
    
));

    
$project verify_project($vbulletin->GPC['projectid']); 



All times are GMT. The time now is 03:44 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03015 seconds
  • Memory Usage 1,734KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (4)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (3)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete