PDA

View Full Version : Sharing by email and display of property image not working in all browsers



billsmithem
10-17-2012, 01:54 PM
After doing a property search and selecting a specific property to view, the image of the property displays momentarily when the page loads and then goes blank. Selecting Share->Email brings up the dialog box, but upon filling out the info and selecting send it just says "sending" forever.

An example: http://loislaneproperties.com/idx/mls-1213495-2_orange_st_charleston_sc_29401

We're seeing this behavior in IE, FF, Chrome, and Safari, and it happens on every machine we've tried it on, here and at our client's location. We know this used to work as this functionality was tested before we took out client's site live.

Screenshots are here: https://picasaweb.google.com/109115863968002091737/LoisLanePropertiesScreenCaptures?authuser=0&feat=directlink

tommytx
10-17-2012, 07:37 PM
Each time you refresh the image will re-appear for a few seconds. When I right click on where the image should be, I see a note "Movie not loaded". Is this possibly a Flash Show which slowly goes thru all the photos and the flash show is not working. Can you tell me more about what that image is and I may be able to help more.. In other words is it a static image or does the Flash Player show each photo one by one...
Also did this begin when you upgraded to the PRO version or no.

tommytx
10-17-2012, 08:45 PM
Did a little more testing... if you cut from the top of the file beginning with the

Cut from top of the document...beginning here..
************************************
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

<img src="http://2.idx-pics.diverse-cdn.com/177/1213495/19-tiny.jpg"
alt="Tiny photo for 2 Orange St, Charleston, SC 29401 (MLS # 1213495)" /></a>
</div>
Stop cutting here...
**********************

Then save that cut section to the server so it has access to the images... and the image will remain in place following loading... so based on that experiment, I believe the image is being jerked off the page by the program that puts shows you the images in the blowout... meaning when you click an image the images are then displayed in the image displayer... basically something later in the page is causing the problem... If you cannot find it, I can help but would have to access your WP Blog to do it... .. I doubt that the problem is being caused by Diverse Solutions... but anything is possible of course...but does sound like a challenge.. but man made it man can fix it.... LOL... good luck!

tommytx
10-17-2012, 09:07 PM
Ok dug in a little more.... found a few more minutes...
IF you disable the script shown below or just remove it from your page the image will not be jerked away.
No more time tonight to finalize the troubleshooting, but it will give you an idea where to start. Not sure what that script is but it is definitely killing the picture... so remove the script temporarily to see... then find out what is wrong with the script. IF you cannot solve it now let me know..




<!-- ********* Begin Shut down the script *************

<script>
dsidx.activate('details');
dsidx.activate('sharing');
dsidx.activate('auth');
dsidx.pluginVersion = '2.0.15';
dsidx.pluginUrl = 'http://loislaneproperties.com/wp-content/plugins/dsidxpress/';
dsidx.idxActivationPath = '/idx/';
dsidx.details.latitude = 32.774801;
dsidx.details.longitude = -79.933156;
dsidx.details.photoCount = 20;
dsidx.details.photoUriBase = 'http://2.idx-pics.diverse-cdn.com/177/1213495/';
dsidx.details.fullSizePhotosCaption = '';
dsidx.details.pid = 47524376;
dsidx.details.ssid = 42;
dsidx.details.city = "Charleston";
dsidx.details.state = "SC";
dsidx.contentDomId = '1350522599';
</script>

********** End Shut down the script ******************** -->


By the way if you want to test without removing the script just put the comment tags above and below it just the way I have it..
Below are what I call comment tags. They will disable the script without physically removing it.

<!-- ********* Begin Shut down the script *************
********** End Shut down the script ******************** -->

billsmithem
10-18-2012, 07:44 AM
Thanks for looking at it, but all of the code you're talking about is from Diverse Solutions, so I don't see how you can say "I doubt that the problem is being caused by Diverse Solutions". Hint: dsidx.pluginUrl = 'http://loislaneproperties.com/wp-content/plugins/dsidxpress/';

Daveed
10-18-2012, 10:10 AM
Hey Bill and Tommy,

I looked into the issue that you're having Bill, and I see that the reason why you're having this issue is because the file that shows the slideshow of pictures in that area is not being allowed to load properly on your Site. When the File tries to load, your Site gives an error of 404 for it, but it shouldn't do that.

If you see the Link and screenshot I am attaching, you'll see the URL of the File and the error it gives. You'll need to follow up with your Host to figure out why it's not being allowed to load properly, but this is usually caused by something else running on the Site that is preventing it, like another Plugin or other code running in the HTML.

URL of slideshow: http://loislaneproperties.com/wp-content/plugins/dsidxpress/assets/slideshowpro.swf
Screenshot of error: http://d.pr/i/3bVY

You can see the Link below for my own test Site where I have the Plugin installed, and how it should look when the File for the slideshow when it loads completely and correctly. It should load blank and not to a 404 page.

URL: http://david-1.client-blogs.diversesolutions.com/blog/wp-content/plugins/dsidxpress/assets/slideshowpro.swf

I hope this all makes sense but if you have any other questions or concerns, please feel free to let me know.

billsmithem
10-18-2012, 10:25 AM
Hey Daveed,

Missed that before. The reason it's not loading properly is that the DS code is generating the wrong URL. It appears that the DS code is using the site address rather than the WordPress address to load the .swf file.

Daveed
10-18-2012, 10:58 AM
Hey Daveed,

Missed that before. The reason it's not loading properly is that the DS code is generating the wrong URL. It appears that the DS code is using the site address rather than the WordPress address to load the .swf file.

Hey Bill,

That's how it should be, it should be using the Site URL rather than the WordPress URL. If you look at the example I sent you from your Site and the example I sent you from my Site, my loads but yours doesn't even though they're both formatted the same way.

billsmithem
10-18-2012, 11:34 AM
Hey Daveed,

I see your site is installed in the subdirectory "blog", and the URL generated by dsidxpress correctly reflects that.

http://david-1.client-blogs.diversesolutions.com/blog/wp-content/plugins/dsidxpress/assets/slideshowpro.swf

My client's site is also installed in a subdirectory, "llpwp", but the generated URL does not reflect where WP is actually installed, so the .swf file (and the js used for the email share, which explains why that is failing as well) are not found.

http://loislaneproperties.com/wp-content/plugins/dsidxpress/assets/slideshowpro.swf

should be

http://loislaneproperties.com/llpwp/wp-content/plugins/dsidxpress/assets/slideshowpro.swf

Previous versions of the plugin did this correctly. The client site is running the most recent version from the WP respository, 2.0.15. What version are you using?

billsmithem
10-23-2012, 11:56 AM
So, after not getting any response here, I opened a ticket, told Jayr Camacho that the .swf and .js files were not loading because the generated paths were wrong and got this brilliant response:


Jayr Camacho, Oct 22 03:26 pm (PDT):
Hello,

I just wanted to follow-up with you regarding this ticket. After review, our developers stated that the issue with the primary image and "Print" options not working is because of a mis-configured option on your end where the url-rewriting is not working for all URLs. You'll need to contact your website host/admin to further assist you.

Bad URLs
http://loislaneproperties.com/wp-content/plugins/dsidxpress/client-assist.php?action=PrintListing&MlsNumber=1213495
http://loislaneproperties.com/wp-content/plugins/dsidxpress/assets/slideshowpro.swf

Valid URL
http://loislaneproperties.com/llpwp/wp-includes/js/jquery/ui/jquery.ui.dialog.min.js?ver=1.8.20

If you view the URLs above, you'll notice the difference with "llpwp" being left out in the first two URLs which is why they lead to a page cannot be found error. This will need to be fixed on your end as we do not provide support for this type of error.

If you have any further questions regarding your account, feel free to contact us!

Thank you for choosing Diverse Solutions and have a wonderful day!

Is there an echo in the room? That's exactly what I said on the phone, except I knew the error was in the plugin.

So since you're not even willing to look at the problem or admit there might be one, I just wasted my morning figuring out what y'all screwed up.

You got it wrong in five places, api-request.php, autocomplete.php, client-assist.php, widget-listings.php and widget-search.php. You did exactly what I thought you'd done, calling get_home_url() instead of plugins_url(), and generating the wrong path to the plugins folder so the files woudn't load. I've patched all five files and everything is working perfectly.

I think you need to get someone that understands how WordPress works to do your plugin.

billsmithem
10-23-2012, 01:00 PM
If anyone is interested, the fixes are below with the old code commented out. Not all of these are needed to fix this specific issue, but they're all wrong so might as well fix them.

api-request.php
//$data = str_replace('{$pluginUrlPath}', get_home_url() . '/wp-content/plugins/dsidxpress/', $data);
$data = str_replace('{$pluginUrlPath}', plugins_url() . '/dsidxpress/', $data);

autocomplete.php
//$plugin_url = get_home_url() . '/wp-content/plugins/dsidxpress/';
$plugin_url = plugins_url() . '/dsidxpress/';

client-assist.php
//$slideshow_xml_url = get_home_url() . '/wp-content/plugins/dsidxpress/' . "client-assist.php?action=SlideshowXml&count=$count&uriSuffix=$uriSuffix&uriBase=$uriBase";
$slideshow_xml_url = plugins_url() . '/dsidxpress/' . "client-assist.php?action=SlideshowXml&count=$count&uriSuffix=$uriSuffix&uriBase=$uriBase";

widget-listings.php
//$data = str_replace('{$pluginUrlPath}', get_home_url() . '/wp-content/plugins/dsidxpress/', $data);
$data = str_replace('{$pluginUrlPath}', plugins_url() . '/dsidxpress/', $data);

widget-search.php
//$pluginUrl = get_home_url() . '/wp-content/plugins/dsidxpress/';
$pluginUrl = plugins_url() . '/dsidxpress/';

bellevueops
10-23-2012, 07:33 PM
Bill -

Since you're familiar with WordPress you'll know that there are just about a million ways to generate a URL to everything from the home page, a theme's css, a resource in a plugin, etc. Currently we've settled on get_home_url() as the method for building/retrieving the basis of a url to a resource, or the home page. We've settled on this after working through many compatibility issues, just like this one. If you're looking for honesty: we have yet to *need* to revert get_home_url to something more plugin specific, like plugins_url, because our customers just don't host their sites under sub-directories, like you do. And if they do, they setup rewrites for resource grabs, like this. I appreciate your frustration, and we will look into supporting WordPress setups like yours in the future, with plugins_url in mind as we do.

Finally, I would advise all Diverse Solutions customers to refrain from editing the dsidxpress code directly. Your setup could be different than Bill's and only showing similar symptoms that require an entirely different fix. Bill's fixes could also lead to regressions in other areas of the site. Unless you know exactly what you are doing, you can easily get yourself stuck in a situation where you need professional help to fix a mistake you might make. Finally, any changes you make will have to be manually maintained by you as plugin updates are published.

billsmithem
10-24-2012, 10:20 AM
Jon,

I would be very interested to know what compatibility issues arise from using the functionality specifically built into the WordPress API to locate the plugins folder. I have never heard of any issues caused by using WordPress properly. On the other hand, using the functionality specifically created to return the front page of a site and then hard coding the rest of the path onto it, is guaranteed to fail on anything but a default install and has the potential to fail due to internal WordPress changes as well. This is bad design.

The plugins_url() function was specifically created by the WordPress developers so that WordPress plugin and theme developers would NOT hard code the paths, creating code that would break if they changed WordPress.

Hacking your way around poor coding practices using .htaccess rewrite rules rather than just using WordPress as it is intended to be used creates a more fragile software installation. There are more things that can go wrong.

While get_home_url() is the correct way to locate the home page, it is definitely not the right way to figure out where the plugins are installed. Counting on everyone to use a "one-click" WordPress install is not a particularly good way to design a plugin.

bellevueops
10-24-2012, 10:34 AM
Thanks for your input Bill, like I mentioned, we're going to investigate supporting installs like yours.

billsmithem
10-24-2012, 11:44 AM
Any chance of getting a notification when this issue has been fixed? Your typical Changelog update on WordPress is not particularly informative, i.e. "Various bug fixes". It would be helpful to know if it's safe to apply the updates without having to read through the source code.

bellevueops
10-24-2012, 02:17 PM
Sure, not a problem. The recent update messages are typically vague as they often relate to issues with dsIDXpress and the Zillow Premier Agent Websites platform, not typical dsIDXpress users. We'll make sure to notate this one once it's in, and I'll make an effort to get this thread updated as well. My thought right now is to roll this into an update we're working on to fix compatibility issues with MU/Network sites that utilize certain plugins to "short-circuit" functionality to allow Network sites to run across multiple domains. I don't have an ETA on that as of yet.

warnerchad
03-29-2013, 12:42 PM
I read this thread and am not 100% clear on the issue. Could someone please clarify? I'm creating a WordPress site for a client, and it's installed in a subdirectory on the server (/public_html/subdir/) rather than the root directory (/public_html/). The site will be accessed at its domain (http://domain.com) and the WordPress URL and Site URL are both http://domain.com.

Will I have a problem for using the dsIDXpress plugin?

billsmithem
03-29-2013, 01:32 PM
Some things will not work correctly. Instead of doing the correct WP function calls to obtain the paths where things are stored they have hard-coded the paths into their software.

I have discussed this with someone identifying themselves as the person in charge of software development, but they are apparently not interested in making it work properly, and instead claimed there are issues with WP. When I asked what the problems with WP were, they suddenly stopped making those claims and said they would look into making changes. The fixes, which I pointed out to them in detail, would take all of ten minutes to implement. Since that was several months ago and they have released several updates since our discussion, I can only assume that they're never going to fix them.

I have a client that likes the software and am manually maintaining a patched copy of the plugin for them that works correctly, but unless you're willing to do the same I would recommend looking elsewhere as they are obviously not going to fix this.

bellevueops
05-03-2013, 05:56 PM
Hey all - we are actually going to fix this. Sorry it's taken so long.

bellevueops
05-09-2013, 06:59 PM
We made some changes to begin to support this better. I believe it's very close, or exactly, what Bill suggested initially. Let me know. We're going to perform a full audit as well to see if there are more urls that need to change.