Jump to content

Michael

Clients
  • Posts

    23,640
  • Joined

  • Last visited

  • Days Won

    114

 Content Type 

Downloads

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog

Development Blog

Deprecation Tracker

Providers Directory

Forums

Events

Store

Gallery

Posts posted by Michael

  1. Friendly bump, I would really like to see this feature added at some point.

    On this site, I always use the Today's Active Content search to find topics to respond to. From that list, I often go into a topic, find I have to report it (wrong forum, for example), and the report form bumps me back to the topic when it is complete. But the act of pulling up the report form and submitting it are new full pages that the browser accesses, so I can't just use the Back button anymore to get back to the page I was on before coming into the topic. If clicking the Report button opened in an ajax popup like the PM button on the profile card, the report could be submitted without having to leave the page, and the Back button would still work as expected.

  2. The first release of our Skin Generator tool was quite successful, and the feedback we got from everyone was very valuable. We've worked on taking that feedback into consideration in our continuing refinement of this tool. While development of this is certainly not done (there's a lot more cool stuff we are working on adding!), we would like to roll out our next major update to this tool. In this update you'll find the following new features and enhancements.

    Page reorganization
    We started to realize as we were planning out some of the things we'd like to do, that the system may require many more options. With the old way of showing all of the options on the left all the time, it soon became clear that adding more future options there would stretch that area down even further, and would soon get overwhelming. What we decided to go with for cleaning this area up was to organize the various settings into categories, and place them in an 'accordion' style menu:

    blogentry-44642-047568200 1272980539_thu

    You can click on each section of this menu to expand that section and collapse the rest, so that your overall menu area stays relatively small, and you only get presented with the options relevant to the type of settings you are changing. Another neat little feature you might note on the 'Pick Colors' menu is that each option there has a reset button to the right of the color picker. If you are fiddling with the colors and you get them just so out of whack that you can't make them look right anymore, do a quick reset to send that color back to the default.

    You'll also notice that the Preview button is gone. The Preview window on the right will now automatically update as you make changes. Pick a different color from one of the color choosers and the Preview updates instantly to reflect that change. The same also applies to the settings on the 'Choose Options' menu.

    More Views
    Being able to preview the skin you're making on just a few standard views is nice, but it's also helpful to be able to see how that skin looks on other pages of IP.Board and the various applications. In this new update we've added several new views to the list:

    blogentry-44642-017772100 1272980562_thu

    Like the color pickers, changes here are automatic: pick a different view from the list and the Preview will update to show that new page. In addition, you can even choose new versions of the applications the skin will be used for on the 'Select Applications' menu and the changes will be relected there. You can see this in things like the IP.Downloads file view since it appears different in the most recent versions of this application.

    Support for the Community Projects
    We've added in support for the skin exporting the correct info for the Community Projects: IP.Tracker, IP.Shoutbox & IP.Links. Simply select which version of each of these that you need for your skin and the export that is built will contain the appropriate templates/CSS/images all recolored based on your selected options.

    Branding options
    This new version includes a couple new features dealing with branding your forum. First, in the 'Choose Options' menu, you are presented with a setting that lets you remove the default IP.Board logo. This is useful if you want to remove that logo entirely, to replace it with your own. In addition, the download will include a blank version of the logo, recolored based on your color choices. This blank logo is just like the standard logo that would be recolored and included in the images folder, but doesn't have the default IP.Board logo text on it. You can use this file to put your own text, or image, or anything else you need on it.

    Extensibility improvements
    Lastly, and least exciting from an end user perspective, we've done a lot of improvements on making various elements of this system more extensible. Previously, doing things like adding new colors or settings would require an awful lot of coding to add the item into the settings menus and to get the source code to find and deal with those inputs. Improvements have been made to move all color settings, applications, views, and other options into XML files. Those files get read to build the page, and then used again to build the preview and the download. This means that additions to the system can be made quickly, with minimal additional coding.

    All told, we feel these enhancements make this system a lot easier to use, and give us a lot of flexibility to further improve the system. As always, we welcome what feedback you have, so let us know what else you'd like to see this tool do in future updates. :)


    View full blog entry

  3. Having a great forum skin is something every forum owner craves. A great skin is a big selling point, as it gives visitors a good first impression, and it colors (pun intended) the overall experience of using that forum. While a great many sites are perfectly happy with the stock IP.Board forum skin, getting something new is often a top priority for sites that are trying to make it big. Up until now, you've had a few options for this:

    • Download or purchase a skin from IPS Resources, or a third party resource site
    • Pay a skinner to make you a custom skin
    • Teach yourself how to skin

    While all of these options are certainly good choices, we'd like to introduce another option for you: our Skin Generator service. This is a brand new service we have developed and made available to those with active IP.Board services licenses as a special little perk.

    The way the tool works is that it presents you with several options for customizing your skin, such as choosing different color choices:

    blogentry-44642-031144500 1269454637_thu

    Clicking on one of the color text boxes there gives you a small UI (from jscolor.com) to choose different colors. You can either use that dialog, or type in a hex color there. There is also an option to apply our 'contrast limiting' function, which attempts to ensure light colors aren't too light, and dark colors aren't too dark; it can be used, or not, to try and get the skin looking the way you want. Once you have chosen colors and any other options, click the Preview button to show what that skin will look like; that shows in the main part of the page. Here's a quick one I created to demonstrate this preview:

    blogentry-44642-068096800 1269455068_thu

    Note the tabs at the top for the different views, you can preview your choices in a couple of different forum views there. Here's a Topic View preview of this same skin:

    blogentry-44642-064029600 1269455173_thu

    Previewing the skins is cool enough, but it wouldn't be a very good skin generator if it wouldn't let you get the skin you created for use on your own site, would it? Below the options for choosing your skin colors, there is a box for choosing some options to build your skin download:

    blogentry-44642-002242300 1269455313_thu

    In here, you can name your skin, and choose the IPS applications you have installed, and their versions. By choosing all of these, your downloaded skin will contain all of the appropriate CSS, templates, and image files for all of these apps. No more worrying about whether the skin you got from a resource site has been coded to work with your IP.Gallery install!

    Once you fill out this box, click Export, and it'll prompt you to download the .zip file of that skin; the Skin Set and Skin Image Set files will be included in that zip, ready for you to import into your site. Here's one I created and installed on my test board:

    blogentry-44642-056204400 1269455509_thu

    Please consider this a beta service at this point. As this is a brand new service plus it is doing something rather difficult (creating a skin automatically) we do expect many bugs. Right now this is designed for IP.Board 3.0.5. We will be upgrading it to IP.Board 3.1 when it is released. Please post any bugs you find or ideas you may have!

    That about wraps it up, please let us know what you think, or any other features you'd like to see introduced in future updates! :)

    View full blog entry

  4. You probably want to find a better way to do this:

    <foreach loop="$markers as $marker">
    
    	<php>
    
    		$friend = IPSMember::checkFriendStatus( $marker['memberId'] );
    
    		$member = IPSMember::load($marker['memberId'], 'profile_portal');
    
            $avatar = IPSMember::buildAvatar( $member );
    
    	</php>


    Doing the IPSMember::load function on each iteration of a loop is adding an extra query for each member it has to load. Would probably be better to try and find all members you need to load and do that function once to load all of them. I just noticed this issue because I was getting 22 queries on this page.


  5. I'm gonna be using, "1600 Pennsylvania Ave, zip 20500" as my address. If anyone has any hate mail for me, send it there. Be sure to address it to Mr. President.






    The dude wearing the Archie Griffin jersey? :devil:
  6. You'll probably figure this out on your own, but to make the Online List stuff work properly, you need to also create an /extensions/coreVariables.php file, with this content:

    <?php
    
    
    /* Resets */
    
    $_RESET = array();
    
    
    /* Make sure our module and section are set */
    
    if ( !isset( $_REQUEST['module'] ) && ( isset( $_REQUEST['app'] ) && $_REQUEST['app'] == 'membermap' ) )
    
    {
    
    	$_RESET['module']  = 'membermap';
    
    	$_RESET['section'] = 'map';
    
    }

    Since your app only has one module and section, and neither is explicitly set in $this->request, they won't ever get saved to the sessions table, and thus the Online List stuff will never really load the stuff from /extensions/coreExtensions.php to parse it. Here's a quick class for that that I whipped up:

    class publicSessions__membermap
    
    {
    
    	public function getSessionVariables()
    
    	{
    
    		/* Return */
    
    		return array();
    
    	}
    
    
    
    	public function parseOnlineEntries( $rows )
    
    	{
    
    		/* Got rows? */
    
    		if ( !is_array( $rows ) || !count( $rows ) )
    
    		{
    
    			return $rows;
    
    		}
    
    
    		/* Loopy loo */
    
    		foreach ( $rows as $row )
    
    		{
    
    			/* In some other app? */
    
    			if ( $row['current_appcomponent'] != 'membermap' )
    
    			{
    
    				$final[ $row['id'] ] = $row;
    
    				continue;
    
    			}
    
    
    			/* Guess not... */
    
    			$row['where_line'] = "Viewing the Member Map";
    
    			$row['where_link'] = 'app=membermap';
    
    
    			/* Add to our array */
    
    			$final[ $row['id'] ] = $row;
    
    		}
    
    
    		/* Return */
    
    		return $final;
    
    	}
    
    }

  7. You'll need to add a class publicSessions__membermap to the /extensions/coreExtensions.php file. It's been reported to me that when people go to the Online list and someone is in the Member Map, they're getting this error:

    Fatal error: Class 'publicSessions__membermap' not found in /home/mccune/public_html/forums/***/applications/members/modules_public/online/online.php  on line 250

  8. Yeah, I don't want to open up that whole avatar vs. photo can of worms, it's just something that seems to me would be more of a place where photos would be displayed. But if that's not the consensus, that's OK. :)

    EDIT: On the popup, it'd be nice if you could also pop up the user's popup card from there too, just include the little icon beside their name like it has it in posts. That way, we can find people on the map and quickly do things like add them as friends, search for posts, see their rep, etc.


  9. The zoom level is set automatically so it includes all markers, the more that are added the further apart the more it will zoom out.



    What sort of information do you think would be useful in the pop-up ?



    I'm not sure I saw much point for FURLS apart from /membermap/ There's not really any other pages to it.



    I think maybe the group name, and maybe the joined date? Just some common info about that member.

    And yeah, just /membermap/ would be fine, it's very minor, but I like seeing those URLs as opposed to the ?app= ones.

    There's an unused function which can lead to an error at ?app=membermap&module=membermap&section=map&action=images.

    I have a few more feature suggestions too, if you don't mind. For the Admin side, it'd be nice if the settings were linked from the apps main menu, instead of having to go to the settings page. Admin options to remove member's markers would be good too. I think I'd rather the pictures shown when clicking on a marker were the profile pics instead of avatars. Since this is about where the members actually are at, I thinking showing their actual pic makes more sense. I also like the idea of an Admin being able to add additional icons. Could be cool for like setting a marker for a meetup or something? I'd probably never do that, but it'd be nice.
  10. Pretty cool. :)

    Is there any way to set the default zoom level? When I go to the map, it's zoomed in pretty far, there's no one else in my immediate neighborhood.

    How about showing some other info on the little member popup? Is that controllable?

    Are there any plans to add FURL support?

  11. You have to alter the database to do this, and it comes up how often, once in the lifetime of your site? Twice, maybe, when you decide you want to change something back? I think just noting which queries are needed for these are fine. If you want to create a page that does all of these queries, it just opens up a can of worms with people wanting something similar which will change the default values of things like groups, forums, topics, etc.

  12. One of the neat new features of IP.Board 3.0 was its integrated application/hook installer and upgrader. Using this took a lot of the headache out of updating modifications when the author produced a new version as you would have either needed to use a custom installer script or install a component dedicated to modification installations. This has helped out with the installations of modifications, but skins still install in essentially the same way, and there is nothing built in to the product to let you upgrade skins.

    Currently, when a new third party skin gets updated by its author, it can involve a lot of work for board owners who use that skin to upgrade the copy of it on their site. The old procedure was to import the new version of the skin, move everyone who was using the old version onto the new version, and delete the old version. If you had customized anything to do with that skin template prior to initially installing it, you'd have to keep track of what changes you had made so that you could apply them to the new version of the skin. It should go without saying, this procedure was clunky at best.

    Recently I stumbled across a post where this frustration was mentioned. This got me thinking about the issue. Surely there must be a way to upgrade a skin just like hooks and applications can be upgraded, right?

    Right now I'm developing some additional functionality in the Skin Import/Export feature in IP.Board 3.1 to take care of this. Essentially how it will work is this: when you import a skin set, the skin info is checked to see if a 'skin set key' has been set. If it has, it checks if this key matches the key of a skin you already have installed. If it does match, and you check a box indicating you want to try and upgrade, it will attempt to upgrade your existing skin. Any replacements/CSS/templates that this new skin XML has will be checked against the existing items from the old version of the skin to see if changes are needed.

    Thus far, I have it coded to show you the check box to indicate whether or not an upgrade will be attempted:

    blogentry-44642-12644422719_thumb.png

    I also have a lot of the back end work done where it will see if it needs to upgrade an existing item instead of just inserting a new version of the item. There's a lot of checking involved to be sure I'm not duplicating elements, so this will require a lot of testing. I've got a few bugs to work though on this, but it should be in place pretty soon.

    I think that this will be a feature that will be appreciated by a lot of folks. I welcome any feedback you may have. :)


    View full blog entry


  13. Not really. You know how we've already got "don't parse other BBCode inside of this BBCode"? Just add an extra one, "don't parse this BBCode inside of other BBCode", because to be honest you probably don't want a video parsing inside of anything else.



    What about sites that might want media to work inside of quote tags, but not code tags?
  14. The problem with what you need is that there'd have to be a huge matrix of settings to handle that. Each bbcode would need it defined how it interacts with each other bbcode. For example, you'd need to define which bbcodes are parsed inside of code tags, which are parsed inside of quote tags, which are parsed inside of url tags, etc. And then since all bbcodes are custom bbcodes, and new ones like iframe could be added, each new bbcode would again need it defined how bbcodes inside of that work. It's a lot of stuff to check.

×
×
  • Create New...