Shashin 3.0.3

I uploaded some Shashin fixes yesterday. Thanks everyone for the feedback. These were the changes:

  • Fixed display of “crop” input field on media menu for photos and albums (it wasn’t showing the option for you to crop)
  • Improved exception handling (there were a few cases where you could end up with an uncaught exception, which is not nice if there’s a problem)
  • Handle commas in “exposure” in EXIF data (there’s at least one camera model that included a comma in the exposure value, so Shashin now handles it as a string instead of a number).

Please use the comment section for reporting problems. I have a hectic week coming up, so it may take me a few days to respond to feedback. Thanks for your patience.

32 Comments

  1. Adriaan November 13, 2011

    Hi Mark,

    First of all: thanks a lot for all the great contributions you make to WordPress through your great plugins! I really appreciate them a lot, especially shashin, which I have been using with great pleasure!

    But when I upgraded from version 2.6.3 to 3.0.3, the following error showed up, even though I did install the Toppa Plugin Libraries for WordPress plugin:

    Fatal error: Class ‘ShashinWp’ not found in /var/www/vhosts/trion.ruhosting.nl/httpdocs/2/wp-content/plugins/shashin/start.php on line 20

    Even after reinstalling both the shashin and toppa libraries plugins, the same error shows up.

    Hopefully you or someone else who has encountered this problem can help me out here? It would be much appreciated!

    All the best,
    Adriaan

    • Mike November 13, 2011

      Hi Adriann – that’s an unusual error. It seems like the class autoloader is not working. But during installation it checks that you have the right version of PHP that supports autoloading. Can you let me know which version of PHP you are using?

      • Adriaan November 13, 2011

        Hi Mike,
        I’m using PHP version 5.1.6 (unfortunately my webhost uses this old(er) version, which prevents me from upgrading wordpress from 3.1.4 to 3.2.1), (and MySql version 5.0.77).
        According to the requirements for shashin 3.0 this should be good enough?
        Best,
        Adriaan

        • Mike November 13, 2011

          PHP 5.1.2 is sufficient, and that’s what Shashin checks for when activated. The only thing I can think of is that your site doesn’t have autoloading configured properly. If you’re comfortable working in PHP, you could run

          echo spl_autoload_extensions();

          which will tell you if it will look for .php files (the autoloader should see the class name “ShashinWp” and then look for the file “ShashinWp.php”)

          • Adriaan November 14, 2011

            When I let my webbrowser ‘visit’ a php page (on my website) with the following code:

            the output is the following:
            .inc,.php

            So I guess my site does look for .php files unfortunately?

          • Mike November 14, 2011

            Hi Adriaan – I’m sorry, I’m not sure what else to check. If you like I can get a copy of the old version of Shashin if oyu don’t still have it, and hopefully when your version of PHP is updated you won’t have this problem anymore with the new Shahsin.

  2. Adriaan November 13, 2011

    PS, I’m so sorry, I meant to type ‘Mike’, but for some reason I typed ‘Mark’; my apologies!
    Adriaan

  3. Nathaniel Wolf November 14, 2011

    Hey Mark,
    I’ve been using Shashin since early 2009 -with whatever version was out then- I’m managing over 60 albums with ~400 of photos being displayed in posts through this tool, and it’s been great. I just upgraded to 3.0.3 because trying to add a new album didn’t work. I added the Toppa Plugin Libraries for WordPress plugin, enabled ‘Support old-style Shashin shortcodes’, and pressed the ‘Sync all’. However, now my whole blog is dead! I get an error on every page where the first photo should be:

    Fatal error: Class ‘Public_ShashinPhotoDisplayerHighslide’ not found in /home/another6/public_html/wp-content/plugins/shashin/Public/ShashinContainer.php on line 83

    I’ve looked at source code and there is no class ShashinPhotoDisplayerHighslide anywhere.

    Additionally when I open an old (or just added) album in Tools>Shashin it shows me one or zero Photoshop, even though the album description may say 60 photos.

    Please help! My blog has a lot of readers and it is completely dead until I fix this.

    Nathaniel

    • Nathaniel Wolf November 14, 2011

      Additionally, if I change the ‘How to display a full-size photo when its thumbnail is clicked’ to ‘Display at photo hosting site’ I get the error:

      Fatal error: Class ‘Public_ShashinPhotoDisplayerSource’ not found in /home/another6/public_html/wp-content/plugins/shashin/Public/ShashinContainer.php on line 83

      • Mike November 14, 2011

        For anyone reading, Nathaniel and I have exchanged emails – his upgrade did not complete properly. If anyone else is seeing this error, post a reply here, and I’ll provide details on fixing it.

  4. Erik November 14, 2011

    Mike,

    Thanks for the quick changes!

    Erik

  5. Leela Robinson November 14, 2011

    Mike ~ Am still unable to delete Toppa as a plugin – this is a problem new to me. The fix you offered is beyond my skill set. I don’t understand needing to affect all other plugins to delete one manually. Here is our past exchange:

    Leela Robinson says:
    November 13, 2011 at 9:21 am

    Hello ~ I am having trouble deleting the Shashin plugin. I followed the example of reinstalling Toppa libraries, so that I could delete Shashin first. The result is the same: a white screen with the following URL:
    [[ url removed ]]
    Thank you for your help.

    Mike says:
    November 13, 2011 at 10:30 am

    Sorry for the trouble. Iā€™m not sure how you may have gotten to that state. It sounds like you need to follow the steps here: How to deactivate all plugins when not able to access the administrative menus?

    That will deactivate all your plugins. Then you can delete the shashin plugin folder and then reactivate your other plugins.

    • Mike November 14, 2011

      Hi Leela – sorry again for the trouble. I think I misunderstood your previous message. I thought you meant the screen is always blank, but it sounds like it’s only blank when you try to delete shashin. Are you able to deactivate shashin? I am wondering if the problem is with deactivating and deleting, or just deleting. Also, is your goal to just get rid of it, or do you want to make it work?

      • Leela Robinson November 15, 2011

        Yes I do want to delete entirely. I am able to deactivate the plugin, but then get a white screen when I attempt to delete. I already followed your suggestion to another user of making sure Toppa libraries was still installed.

        • Mike November 17, 2011

          Hi Leela – I just tested deleting Shashin to confirm it’s working, and it’s ok. So your installation must be corrupted in some way. Your web hosting provider should have instructions for how to use an FTP client, or they may even let you access your site’s files directly through a web application. You can use this to delete the Shashin files from your server. When the files are deleted WordPress will deactivate and remove Shashin from your plugin panel. Shashin is located in under your wordpress folder, in wp-content/plugins/shashin

          • Leela Robinson November 17, 2011

            I went into my host cpanel and found the folder and deleted it. Thank you for explaining what to do as I am just learning. San Kyuu!

  6. Marek November 15, 2011

    First of all, thanks for great plugin, I am using it for some time. But – previously I had a page (in fact multiple such pages) with a few galleries with a preview of one photo, and when I clicked on that photo, I was moved to a separate page (with separate URL) that has shown that gallery. This was good for the following reasons: I could use browser back button to get back to the list of galleries, I had special stable URL of each gallery to address it from other pages, and also it was immediately visible that the browser is doing something (loading next page, especially useful for larger galleries). Now, while the jQuery-based navigation on one page may be cool, I lost all the advantages described. Is there any way to achieve similar functionality – other than creating special pages for all such galleries? Thanks.

    • Mike November 17, 2011

      Hi Marek,

      Part of the reason I changed it is that I got a lot of complaints about the photos being on a separate page… but there are a couple ways to do what you want. Someone else asked the same question – here is my response

  7. Kristian November 15, 2011

    Hi Mike,
    I managed to get 3.0.3 running with the tip you gave me on Nov. 13, but I have one very strange problem: I can get the cover picture of an album on a page, but clicking it has no effect (see http://www.hjornholm.dk/index.php/test-galleri ).
    When adding the album, I had to change https to http, as I got this error:
    “Failed to retrieve album feed at https://picasaweb.google.com/data/feed/api/user/102120393863320252559/albumid/5580619474465017121?alt=json

    On another site, it works just fine with the same album: http://www.struerbilledskole.dk/?page_id=120 – this site is still running 3.0.2 – is this the explanation ? As far as I can see, all settings are identical, and I can add albums with https intact.

    • Mike November 17, 2011

      Hi Kristian – I tried looking at your site but got a “this site is taking too long to respond error”. There must be a javascript conflict with another plugin or your theme causing the album thumbnail click to not work. If you try temporarily turning off your plugins and temporarily changing themes, and then keep checking Shashin as you turn them back on, you should be able to determine which one is causing the conflict. If you can tell me which one, I can take a closer look to find the problem.

      The https problem should not be related to the 3.0.3 upgrade. Since they are different sites, it’s probably a difference in server configurations. Some web hosts are very strict about the types of outgoing requests they allow.

      • Kristian November 18, 2011

        Hi Mike – I don’t understand why you got the “too long..” error, have not seen it before. Which is your browser ? I use Chrome and IE, both work with both sites.
        I tried your tip with turning off plugins and switching themes, no difference šŸ™
        I upgraded http://www.struerbilledskole.dk to 3.0.3 and it still works (phew).
        Both websites are hosted by the same ISP, server configurations ought to be identical. However, when installing a plugin on http://www.hjornholm.dk (Google Analytics Dashboard) that I succesfully use on http://www.struerbilledskole.dk I got this error, that MAY be a clue: “It appears that CURL is not compiled into your version of PHP. It is required for this plugin to function correctly.” I have no idea what CURL is or does, but could there be something missing in the PHP on the server that is not behaving with Shashin ?
        I hate the thought of giving up, but I am running out of ideas to try out, so suggestions are more than welcome šŸ™‚

        • Mike November 18, 2011

          Hi Kristian,

          If you don’t have curl, it might affect album syncing, but it would not affect Highslide for displaying thumbnails. curl is a PHP library for making outgoing requests from your web site to other web sites.

          I was able to connect to your site today. In the photos on the page http://www.hjornholm.dk/index.php/galleri there is code inserted by Google Analytics in the links that is breaking Highslide. Some of the Analytics plugins give you an option to ignore links to certain servers. If yours lets you do this, have it ignore links to ggpht.com (this is the Picasa server used for displaying photos) – that may fix the problem.

          • Kristian November 18, 2011

            Boy, that was a fast reply ! šŸ™‚
            With my Analytics plugin, I cannot ignore specific links, so I disabled the bugger. I now see no code inserted by Google Analytics, and still when I click the picture in http://www.hjornholm.dk/index.php/test-galleri I get no slideshow… šŸ™
            BTW, the same GA plugin is running on http://www.struerbilledskole.dk where everything is working fine…
            Am I barking up the wrong tree – should I be checking with my ISP if the two websites are running om identical servers, or if there are differences in the environment ?

          • Mike November 18, 2011

            Hi Kristian – I’m confused – when I run http://www.hjornholm.dk/index.php/test-galleri through Google translate it tells me it’s a 404 “page not found” error page

  8. PowerKiKi November 16, 2011

    Hi,

    I found a bug with the ajax URL used by Shashin. It may be wrong if we also use the plugin wordpress-mu-domain-mapping or IIS server. This is because of how the check for HTTPS is made in ToppaFunctionsFacadeWp.php (lines 49 and 57). According to PHP manual, http://www.php.net/manual/en/reserved.variables.server.php, it is also needed to check for the value “off” (which may be set either by wordpress-mu-domain-mapping or IIS server).

    I wrote a simple patch that I would happily send to you if you reply to my email address. Or just replace with that code: if (!$scheme && !empty($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] != ‘off’) {

    • Mike November 17, 2011

      Thanks very much – I will make update Shashin with your change.

      • PowerKiKi November 17, 2011

        Actually, meanwhile, I discovered core function is_ssl(). So I would suggest to use that instead:

        if (!$scheme && is_ssl()) {

        • Mike November 19, 2011

          Thanks again – I uploaded this change last night to wordpress.org

  9. Kazu November 16, 2011

    First, thanks for good plugin!

    I updated the plugin to version 3.0.3, then some posts aren’t displayed.
    When I stop only shashin plugin, every posts are displayed(of course, pictures aren’t displayed.)

    Please give me advise.

    • Mike November 17, 2011

      Hi Kazu -can you give me a link so I can see what you mean? I will need more details to understand the problem. If you don’t want to post a link pubicly you can email me through my contact page.

      • Kazu November 19, 2011

        Hi Mike

        I tested some posts and understood that if posts have approximately 5500 characters or more, they aren’t displayed.

        Is it correct?

        • Mike November 19, 2011

          Hi Kazu – no that is not correct. The post content is stored in a “longtext” field which can hold up to 4GB. I will need more details to help you. Can you give me a link to your site, and let me know the exact shortcode you are using in one of the posts that’s not displaying.

Comments are Disabled