Page 1 of 1
TABS created in hooks/tablename.php file
Posted: 2022-06-23 23:54
by ronwill
When creating a detailed view with TABS ie with code like:
Code: Select all
function products_dv($selectedID, $memberInfo, &$html, &$args) {
/* if this is the print preview, don't modify the detail view */
if(isset($_REQUEST['dvprint_x']))return;
ob_start(); ?>
<div id="form-tabs">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1-info" data-toggle="tab"><big>Product </big></a></li>
<li><a href="#tab2-info" data-toggle="tab"><big>Details</big></a></li>
<li><a href="#tab3-info" data-toggle="tab"><big>Options</big></a></li>
<!-- <li><a href="#tab4-info" data-toggle="tab"><big>Admin</big></a></li> -->
</ul>
<ul class="tab-content">
<div class="tab-pane active form-horizontal" id="tab1-info"></div>
<div class="tab-pane form-horizontal" id="tab2-info"></div>
<div class="tab-pane form-horizontal" id="tab3-info"></div>
<div class="tab-pane form-horizontal" id="tab4-info"></div>
</ul>
</div>
<style>
#form-tabs .nav-tabs a{display: block !important;}
</style>
Is it possible to have a selected TAB (i.e. in this example #tab4-info / Admin) and its contents, only visible to the Admin group?
Cheers,
Ron
Re: TABS created in hooks/tablename.php file
Posted: 2022-10-02 12:07
by ronwill
I've still not found a solution to this, anyone have any pointers/ideas
cheers
Re: TABS created in hooks/tablename.php file
Posted: 2022-10-02 12:40
by pbottcher
Hi,
you can try something like this.
Code: Select all
$html.='
<div id="form-tabs">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1-info" data-toggle="tab"><big>Product </big></a></li>
<li><a href="#tab2-info" data-toggle="tab"><big>Details</big></a></li>
<li><a href="#tab3-info" data-toggle="tab"><big>Options</big></a></li>';
if ($memberInfo['group']='Admins') {
$html.='<li><a href="#tab4-info" data-toggle="tab"><big>Admin</big></a></li>';
}
$html.='</ul>
<ul class="tab-content">
<div class="tab-pane active form-horizontal" id="tab1-info"></div>
<div class="tab-pane form-horizontal" id="tab2-info"></div>
<div class="tab-pane form-horizontal" id="tab3-info"></div>';
if ($memberInfo['group']='Admins') {
$html.='<div class="tab-pane form-horizontal" id="tab4-info"></div> ';
}
$html.='
</ul>
</div>
<style>
#form-tabs .nav-tabs a{display: block !important;}
</style>
';
Re: TABS created in hooks/tablename.php file
Posted: 2022-10-02 16:52
by ronwill
Tried the code but it shows like this on page:

- result1.jpg (14.49 KiB) Viewed 2514 times
Code: Select all
function products_dv($selectedID, $memberInfo, &$html, &$args) {
/* if this is the print preview, don't modify the detail view */
if(isset($_REQUEST['dvprint_x']))return;
ob_start(); ?>
$html.='
<div id="form-tabs">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1-info" data-toggle="tab"><big>Product </big></a></li>
<li><a href="#tab2-info" data-toggle="tab"><big>Details</big></a></li>
<li><a href="#tab3-info" data-toggle="tab"><big>Options</big></a></li>';
if ($memberInfo['group']='Admins') {
$html.='<li><a href="#tab4-info" data-toggle="tab"><big>Admin</big></a></li>';
}
$html.='</ul>
<ul class="tab-content">
<div class="tab-pane active form-horizontal" id="tab1-info"></div>
<div class="tab-pane form-horizontal" id="tab2-info"></div>
<div class="tab-pane form-horizontal" id="tab3-info"></div>';
if ($memberInfo['group']='Admins') {
$html.='<div class="tab-pane form-horizontal" id="tab4-info"></div> ';
}
$html.='
</ul>
</div>
<style>
#form-tabs .nav-tabs a{display: block !important;}
</style>
';
<style>
#form-tabs .nav-tabs a{display: block !important;}
</style>
<script>
$j(function(){
$j('#form-tabs').appendTo('#products_dv_form');
/*Field to move the welcome info tab1*/
$j('#id').parents('.form-group').appendTo('#tab1-info');
$j('#product').parents('.form-group').appendTo('#tab1-info');
$j('#price').parents('.form-group').appendTo('#tab1-info');
$j('#shop_item').parents('.form-group').appendTo('#tab1-info');
/*Field to move the client info tab2*/
$j('#list_price').parents('.form-group').appendTo('#tab2-info');
$j('#description').parents('.form-group').appendTo('#tab2-info');
$j('#tag').parents('.form-group').appendTo('#tab2-info');
$j('#options_0').parents('.form-group').appendTo('#tab2-info');
/*Field to move to tab3*/
$j('#tag_product').parents('.form-group').appendTo('#tab3-info');
$j('#tag').parents('.form-group').appendTo('#tab3-info');
$j('#option_note').parents('.form-group').appendTo('#tab3-info');
$j('#options_1').parents('.form-group').appendTo('#tab3-info');
$j('#options_2').parents('.form-group').appendTo('#tab3-info');
$j('#options_3').parents('.form-group').appendTo('#tab3-info');
/*Field to move to tab4*/
$j('#disc_apply').parents('.form-group').appendTo('#tab4-info');
$j('#discount').parents('.form-group').appendTo('#tab4-info');
$j('#disc_percent').parents('.form-group').appendTo('#tab4-info');
$j('#disc_val_item').parents('.form-group').appendTo('#tab4-info');
$j('#del_apply').parents('.form-group').appendTo('#tab4-info');
$j('#delivery').parents('.form-group').appendTo('#tab4-info');
$j('#options_apply').parents('.form-group').appendTo('#tab4-info');
$j('#option_1_price').parents('.form-group').appendTo('#tab4-info');
$j('#option_2_price').parents('.form-group').appendTo('#tab4-info');
$j('#option_3_price').parents('.form-group').appendTo('#tab4-info');
$j('#sum_options_item').parents('.form-group').appendTo('#tab4-info');
$j('#instal_apply').parents('.form-group').appendTo('#tab4-info');
$j('#installation').parents('.form-group').appendTo('#tab4-info');
$j('#tax_apply').parents('.form-group').appendTo('#tab4-info');
$j('#tax').parents('.form-group').appendTo('#tab4-info');
$j('#tax_val_item').parents('.form-group').appendTo('#tab4-info');
$j('#sum_item_notax').parents('.form-group').appendTo('#tab4-info');
$j('#sum_per_item').parents('.form-group').appendTo('#tab4-info');
$j('#added_by').parents('.form-group').appendTo('#tab4-info');
$j('#added_on').parents('.form-group').appendTo('#tab4-info');
$j('#updated_on').parents('.form-group').appendTo('#tab4-info');
})
</script>
<?php
$tabs = ob_get_contents();
ob_end_clean();
$html .= $tabs;
}
Re: TABS created in hooks/tablename.php file
Posted: 2022-10-02 18:23
by pbottcher
remove the line
and the lines
Code: Select all
<?php
$tabs = ob_get_contents();
ob_end_clean();
$html .= $tabs;
Re: TABS created in hooks/tablename.php file
Posted: 2022-10-02 22:07
by ronwill
When I do that the TABS disappear and only the content of last tab (Admin) shows, also content shows on Admin and other group logins (regardless of group signing in).
Re: TABS created in hooks/tablename.php file
Posted: 2022-10-02 23:21
by ronwill
Hi,
Got it working with code as below. Works for the three signup groups - (could probably be tidied up but works)
Cheers,
Ron
Code: Select all
function products_dv($selectedID, $memberInfo, &$html, &$args) {
/* if this is the print preview, don't modify the detail view */
if(isset($_REQUEST['dvprint_x']))return;
ob_start();
if ($memberInfo['group'] == 'Admins'){
?>
<div id="form-tabs">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1-info" data-toggle="tab"><big>Product </big></a></li>
<li><a href="#tab2-info" data-toggle="tab"><big>Details</big></a></li>
<li><a href="#tab3-info" data-toggle="tab"><big>Options</big></a></li>
<li><a href="#tab4-info" data-toggle="tab"><big>Admin</big></a></li>
</ul>
<?php
}
if ($memberInfo['group'] == 'Customers'){
?>
<div id="form-tabs">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1-info" data-toggle="tab"><big>Product </big></a></li>
<li><a href="#tab2-info" data-toggle="tab"><big>Details</big></a></li>
<li><a href="#tab3-info" data-toggle="tab"><big>Options</big></a></li>
</ul>
<?php
}
if ($memberInfo['group'] == 'anonymous'){
?>
<div id="form-tabs">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1-info" data-toggle="tab"><big>Guests </big></a></li>
<li><a href="#tab2-info" data-toggle="tab"><big>Info</big></a></li>
</ul>
<?php
}
?>
<ul class="tab-content">
<div class="tab-pane active form-horizontal" id="tab1-info"></div>
<div class="tab-pane form-horizontal" id="tab2-info"></div>
<div class="tab-pane form-horizontal" id="tab3-info"></div>
<div class="tab-pane form-horizontal" id="tab4-info"></div>
</ul>
</div>
<style>
#form-tabs .nav-tabs a{display: block !important;}
</style>
<script>
$j(function(){
$j('#form-tabs').appendTo('#products_dv_form');
/*Field to move the welcome info tab1*/
$j('#id').parents('.form-group').appendTo('#tab1-info');
$j('#product').parents('.form-group').appendTo('#tab1-info');
$j('#price').parents('.form-group').appendTo('#tab1-info');
$j('#shop_item').parents('.form-group').appendTo('#tab1-info');
/*Field to move the client info tab2*/
$j('#list_price').parents('.form-group').appendTo('#tab2-info');
$j('#description').parents('.form-group').appendTo('#tab2-info');
$j('#tag').parents('.form-group').appendTo('#tab2-info');
$j('#options_0').parents('.form-group').appendTo('#tab2-info');
/*Field to move to tab3*/
$j('#tag_product').parents('.form-group').appendTo('#tab3-info');
$j('#tag').parents('.form-group').appendTo('#tab3-info');
$j('#option_note').parents('.form-group').appendTo('#tab3-info');
$j('#options_1').parents('.form-group').appendTo('#tab3-info');
$j('#options_2').parents('.form-group').appendTo('#tab3-info');
$j('#options_3').parents('.form-group').appendTo('#tab3-info');
/*Field to move to tab4*/
$j('#disc_apply').parents('.form-group').appendTo('#tab4-info');
$j('#discount').parents('.form-group').appendTo('#tab4-info');
$j('#disc_percent').parents('.form-group').appendTo('#tab4-info');
$j('#disc_val_item').parents('.form-group').appendTo('#tab4-info');
$j('#del_apply').parents('.form-group').appendTo('#tab4-info');
$j('#delivery').parents('.form-group').appendTo('#tab4-info');
$j('#options_apply').parents('.form-group').appendTo('#tab4-info');
$j('#option_1_price').parents('.form-group').appendTo('#tab4-info');
$j('#option_2_price').parents('.form-group').appendTo('#tab4-info');
$j('#option_3_price').parents('.form-group').appendTo('#tab4-info');
$j('#sum_options_item').parents('.form-group').appendTo('#tab4-info');
$j('#instal_apply').parents('.form-group').appendTo('#tab4-info');
$j('#installation').parents('.form-group').appendTo('#tab4-info');
$j('#tax_apply').parents('.form-group').appendTo('#tab4-info');
$j('#tax').parents('.form-group').appendTo('#tab4-info');
$j('#tax_val_item').parents('.form-group').appendTo('#tab4-info');
$j('#sum_item_notax').parents('.form-group').appendTo('#tab4-info');
$j('#sum_per_item').parents('.form-group').appendTo('#tab4-info');
$j('#added_by').parents('.form-group').appendTo('#tab4-info');
$j('#added_on').parents('.form-group').appendTo('#tab4-info');
$j('#updated_on').parents('.form-group').appendTo('#tab4-info');
})
</script>
<?php
$tabs = ob_get_contents();
ob_end_clean();
$html .= $tabs;
}