Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons

Reply
 
Thread Tools
v3 Arcade Add To Favourites In Game Play Area Details »»
v3 Arcade Add To Favourites In Game Play Area
Version: 1.00, by Gemma Gemma is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Category: Add-On Releases - Version: 4.x.x Rating:
Released: 04-28-2011 Last Update: Never Installs: 26
Template Edits
Re-useable Code Code Changes  
No support by the author.

I've noticed that there is no way of adding a game to your favourites whilst playing the game, at present you can only add via the category list or when submitting a score. Personally I think adding when playing makes more sense.

To do this, open your arcade.php file and find:

Code:
// ############################################################################
// Play a game
// ############################################################################
if ($_REQUEST['do'] == 'play')
{
    $vbulletin->input->clean_array_gpc('r', array(
        'challengeid' => TYPE_UINT,
        'gameid' => TYPE_UINT,
        'resolution' => TYPE_INT,
        'tid' => TYPE_UINT
    ));
Below that add:

Code:
$favcache = unserialize($vbulletin->userinfo['favcache']);
    $show['fav'] = ($favcache[$vbulletin->GPC['gameid']]);

// set favorites
    $favcache = unserialize($vbulletin->userinfo['favcache']);
    if (!is_array($favcache))
    {
        $favcache = array();
    }
Save the file and re-upload

In your v3ARCADE_PLAY template search for:

Code:
<div class="blockrow" align="center">
                        <vb:if condition="!$show['challenge'] AND !$show['tournament']">
                            <img src="{vb:raw vboptions.arcadeimages}/backtip.gif" border="0" alt="" />
                        <vb:else />
                            {vb:rawphrase challenge_warning}
                        </vb:if>
                    </div>
Below that add:

Code:
<!-- favorites -->
                <div class="blockrow" align="center">
                            <vb:if condition="$show['fav']">
                                <img src="{vb:raw vboptions.arcadeimages}/subfav.gif" id="fav_{vb:raw game.gameid}" class="point" onclick="dofav({vb:raw game.gameid})" alt="{vb:rawphrase sub_favorite}" border="0" />
                            <vb:else />
                                <img src="{vb:raw vboptions.arcadeimages}/addfav.gif" id="fav_{vb:raw game.gameid}" class="point" onclick="dofav({vb:raw game.gameid})" alt="{vb:rawphrase add_favorite}" border="0" />
                            </vb:if>
                            <span id="favlabel" onclick="dofav({vb:raw game.gameid})" style="cursor:pointer; text-decoration: underline">
                                <vb:if condition="$show['fav']">{vb:rawphrase sub_favorite}<vb:else />{vb:rawphrase add_favorite}</vb:if>
                            </span>
                        </div>
                                <!-- end of favorites -->
If anyone wants to further develop any of my addons, you are free to do so.

Download Now

File Type: txt Add Favourites To Game Play Area.txt (2.5 KB, 40 views)

Screenshots

File Type: jpg favs.jpg (84.0 KB, 0 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #12  
Old 05-23-2012, 09:09 PM
Gemma's Avatar
Gemma Gemma is offline
 
Join Date: Apr 2004
Location: Scotland
Posts: 1,229
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by doubleclick View Post
I added this, and you're right, this is exactly where it should be!

I'm having one issue with this in that the phrase never changes from "Add to Favorites" This is whether I click the icons or the words. The icons switch back and forth as they should, and so does the alt text. But the phrase stays the same.

I just upgraded to 4.2.0 so I don't know if this is just a coincidence or not, but worth mentioning.


---just noticed that the words actually staying the same no matter what the phrase is, depending on where it starts after a page load. When page refreshes, the icon, words, and alt text all match and correct. However, from then on, clicking doesn't change the words.
It works as it was designed to work. That's how it is throughout the arcade, the link doesn't change dynamically, it will only change between the two phrases once you revisit the page or another page where favourites can be added or removed.

I guess when the arcade was designed they weren't expecting someone being indecisive about whether a game was a favourite or not and rapidly clicking between adding and removing a game.
Reply With Quote
  #13  
Old 05-23-2012, 10:32 PM
doubleclick doubleclick is offline
 
Join Date: Jul 2004
Posts: 218
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the explanation. I don't think people are indecisive as to whether they want a game to be a favorite. Having a link that says one thing yet means the opposite can be confusing to the users. Creating a workaround is easy enough, which is to simply create a button image that says add or remove favorite, then get rid of the text. I just thought it was a mistake that you weren't aware of and would want to correct. Your "it's a feature not a bug" explanation is good enough for me.

Please understand that I wasn't criticizing you free contribution, your coding skills, or the v3arcade design overall. Just bringing information to the discussion.

(That and the fact that after fooling around with the if statements for almost an hour today with no luck, I was very curious as to how it was possible to make it work that way just from a sheer intellectual level. I was feeling defeated by a few lines of code.)
Reply With Quote
Благодарность от:
Gemma
  #14  
Old 05-24-2012, 10:16 AM
doubleclick doubleclick is offline
 
Join Date: Jul 2004
Posts: 218
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

On the off chance that someone else wants this change, I've attached a couple of replacement images I whipped up for my install. Just remove the portion of code below from Gemma's, then upload the two gifs.

Code:
<span id="favlabel" onclick="dofav({vb:raw game.gameid})" style="cursor:pointer; text-decoration: underline">
<vb:if condition="$show['fav']">{vb:rawphrase sub_favorite}<vb:else />{vb:rawphrase add_favorite}</vb:if>
                            </span>
Attached Images
File Type: gif subfav.gif (1.6 KB, 0 views)
Reply With Quote
Reply

Thread Tools

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 12:33 AM.


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.10688 seconds
  • Memory Usage 2,264KB
  • Queries Executed 19 (?)
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
  • (5)bbcode_code
  • (1)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
  • (1)pagenav_pagelink
  • (4)post_thanks_box
  • (1)post_thanks_box_bit
  • (4)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (4)post_thanks_postbit_info
  • (3)postbit
  • (3)postbit_attachment
  • (4)postbit_onlinestatus
  • (4)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_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
  • 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
  • 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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete