vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 4.x Template Modifications (https://vborg.vbsupport.ru/forumdisplay.php?f=246)
-   -   vBulletin CMS Widgets - YoWindow Weather Widget (https://vborg.vbsupport.ru/showthread.php?t=265918)

8thos 07-03-2011 04:20 PM

Hey Gemma, I didn't initially read the whole thread, I just started installing it because it seemed awesome...

...until I realized it required Forum Block Sidebar. :sad:

How can I adapt this so that members can put it in their profile? That's what I initially thought this was. I don't use forum sidebar on my site because members complain it slows down their browser.

Gemma 07-03-2011 05:52 PM

1 Attachment(s)
Quote:

Originally Posted by zelnik (Post 2215035)
Hey Gemma,

Do you know how difficult it would be to add this to a 'weather' tab on a usersprofile instead of a sidebar block? Only thinking as then you don't have an empty block for those who do not want to use it or slowing down loading speeds every time the page is loaded?

Quote:

Originally Posted by Octavius. (Post 2216275)
Hey Gemma, I didn't initially read the whole thread, I just started installing it because it seemed awesome...

...until I realized it required Forum Block Sidebar. :sad:

How can I adapt this so that members can put it in their profile? That's what I initially thought this was. I don't use forum sidebar on my site because members complain it slows down their browser.

THIS CODE HAS BEEN UPDATED IN THIS POST - https://vborg.vbsupport.ru/showpost....4&postcount=18

There is probably a lot simpler way to do this - I've never created a profile block before.

1. Create your profile field as normal.

2. Then create a new template called weather_aboutme

Code:

<div>
  <div>
    <h5 class="blocksubhead smaller">My Weather</h5>
      <div class="blockbody">
        <div class="blockrow">
          <div class="meta">
            <li>
<vb:if condition="$bbuserinfo[fieldXX] !=''">
            <div style="width:230px; height:150px;">
    <object type="application/x-shockwave-flash" data="http://swf.yowindow.com/yowidget3.swf" width="220" height="150">
        <param name="movie" value="http://swf.yowindow.com/yowidget3.swf"/>
        <param name="allowfullscreen" value="true"/>
        <param name="wmode" value="opaque"/>
        <param name="bgcolor" value="#FFFFFF"/>
        <param name="flashvars"
        value="location_id=gn:{vb:raw bbuserinfo.fieldXX}&amp;time_format=24&amp;us=metric&amp;background=#FFFFFF&amp;mini_locationBar=false&amp;copyright_bar=false"
    />
        <a href="http://yowindow.com/weatherwidget.php"
        style="width:220px;height:150px;display: block;text-indent: -50000px;font-size: 0px;background:#DDF url(http://yowindow.com/img/logo.png) no-repeat scroll 50% 50%;"
        >HTML weather</a>
    </object>
</div>
<div style="width: 220px; height: 15px; font-size: 14px; font-family: Arial,Helvetica,sans-serif;">
    <span style="float:left;"><a target="_top" href="http://yowindow.com?client=widget&amp;link=copyright" style="color: #2fa900; text-decoration:none;" title="Desktop weather">YoWindow.com</a></span>
    <span style="float:right; color:#888888;"><a href="http://yr.no" style="color: #2fa900; text-decoration:none;">yr.no</a></span>
</div><br/><div>Click the image for expanded forecast.</div>
<vb:else />
<br/><b>Add your <a href="{vb:raw vboptions.bburl}/profile.php?do=editprofile">Weather Location Code</A> to show your weather forecast in this block.<br/><br/></b>  </vb:if>
        </div>
      </div>
    </div>
  </div>
</div>
<div class="underblock"></div>

Remember to change the 2 instances of XX to correspond with the profile field you just created. Save the template.

3. In your AdminCP, go to Plugins & Products > Add New Plugin

Product: vBulletin
Hook Location: member_build_blocks_start
Title: Show Weather In Profile
Execution Order: 5
Plugin PHP Code:
Code:

{
  $weather_aboutme_templater = vB_Template::create('weather_aboutme');
  $weather_aboutme_templater->register('weather_aboutme', $weather_aboutme);
  $template_hook['profile_sidebar_stats'] .= $weather_aboutme_templater->render();
}

Plugin is Active: Yes

8thos 07-03-2011 06:09 PM

You're so awesome it's ridiculous.

Taurus1 07-04-2011 04:14 AM

That is brilliant! Thank you so much!!!

spiritguide 10-17-2011 12:29 PM

Is there one of these that will work on vbulletin forum 4.0? Please would love one

Gemma 10-26-2011 04:41 PM

Quote:

Originally Posted by spiritguide (Post 2258185)
Is there one of these that will work on vbulletin forum 4.0? Please would love one

Yes it works on vB4 :confused:

espkaruna 10-31-2011 02:46 PM

This might be asking for too much, but . . doesn't hurt to try.

I like the idea of adding this widget as a box in the member profile. I went through this post and followed the instructions and it works . . . but . . . I notice that no matter which user profile I am viewing on the forums, it still loads my personalized YoWindow on the page. Is there anyway to make this only display on your personal profile page? and better yet, allow you to view the forecast for other users if you browse their profile?

Gemma 10-31-2011 03:40 PM

Quote:

Originally Posted by espkaruna (Post 2263175)
This might be asking for too much, but . . doesn't hurt to try.

I like the idea of adding this widget as a box in the member profile. I went through this post and followed the instructions and it works . . . but . . . I notice that no matter which user profile I am viewing on the forums, it still loads my personalized YoWindow on the page. Is there anyway to make this only display on your personal profile page? and better yet, allow you to view the forecast for other users if you browse their profile?

Ok, try this.

In your MEMBERINFO template find:
Code:

{vb:raw template_hook.profile_sidebar_stats}
Above that put this
Code:

<!---Weather Profile Block--->
<vb:if condition="$userinfo['fieldXX']">
<div>
  <div>
    <h5 class="blocksubhead smaller">{vb:raw userinfo.username}'s Weather</h5>
      <div class="blockbody">
        <div class="blockrow">
          <div class="meta">
            <li>
            <div style="width:230px; height:150px;">
    <object type="application/x-shockwave-flash" data="http://swf.yowindow.com/yowidget3.swf" width="220" height="150">
        <param name="movie" value="http://swf.yowindow.com/yowidget3.swf"/>
        <param name="allowfullscreen" value="true"/>
        <param name="wmode" value="opaque"/>
        <param name="bgcolor" value="#FFFFFF"/>
        <param name="flashvars"
        value="location_id=gn:{vb:raw userinfo.fieldXX}&amp;time_format=24&amp;us=metric&amp;background=#FFFFFF&amp;mini_locationBar=false&amp;copyright_bar=false"
    />
        <a href="http://yowindow.com/weatherwidget.php"
        style="width:220px;height:150px;display: block;text-indent: -50000px;font-size: 0px;background:#DDF url(http://yowindow.com/img/logo.png) no-repeat scroll 50% 50%;"
        >HTML weather</a>
    </object>
</div>
<div style="width: 220px; height: 15px; font-size: 14px; font-family: Arial,Helvetica,sans-serif;">
    <span style="float:left;"><a target="_top" href="http://yowindow.com?client=widget&amp;link=copyright" style="color: #2fa900; font-weight:bold; text-decoration:none;" title="HTML weather">YoWindow.com</a></span>
    <span style="float:right; color:#888888;"><a href="http://yr.no" style="color: #2fa900; text-decoration:none;">yr.no</a></span>
</div><br/><div><center><b>Click the image for expanded forecast.</b></center></div>
        </div>
      </div>
    </div>
  </div>
</div>
<div class="underblock"></div></vb:if>
<!---Weather Profile Block--->

Change both instances of fieldXX to correspond with the profile field you created.

No need for the plugin to be added from post#12, this will now show the weather for each member who has entered the profile data, if they haven't entered any data no block will appear....and when anyone else views the member's profile it will show the weather of the person whose profile you are viewing (if data entered). Also I've had to delete the <vb:else /> part of the code - if I get time later I'll look into that.

espkaruna 11-01-2011 12:04 AM

That is exactly what I was looking for. Thank you Gemma ;)

Krusty1231 02-23-2012 06:54 AM

Working great! Thanks!


All times are GMT. The time now is 09:59 AM.

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.01291 seconds
  • Memory Usage 1,760KB
  • 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_code_printable
  • (4)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (3)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)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
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete