michaeluno / admin-page-framework

Facilitates WordPress plugin and theme development.
http://admin-page-framework.michaeluno.jp/
Other
340 stars 71 forks source link

Conflict: jquery.ui.touch-punch.min.js and sortable #161

Closed patrickf0 closed 10 years ago

patrickf0 commented 10 years ago

Hi there,

I recognized a conflict with jquery.ui.touch-punch.min.js. It was inserted in the admin area via an editor plugin (PixGridder). When this file is enqueued, the sortable functionality is compromiesd (no drag&drop possible).

Can you confirm this problem?

michaeluno commented 10 years ago

It does not seem to be caused by jquery.ui.touch-punch.min.js but gridder.js or gridder.dev.js. If you comment out the line #225 in pixgridder/lib/functions.php, the framework sortable fields start working.

wp_enqueue_script( $this->plugin_slug, PIXGRIDDER_URL.'scripts/gridder.js', array($this->plugin_slug.'-modernizr','jquery','jquery-ui-core',$this->plugin_slug.'-ui-touch-punch','jquery-ui-sortable',$this->plugin_slug.'-livequery','jquery-ui-resizable','jquery-ui-dialog') );

This seems to be caused by a name conflict with the name sortable() defined here. I'll see if I can change the method name used by the framework to avoid this conflict.

Thanks for the report.

ghost commented 10 years ago

Great catch @patrickf0 we also use Pixgridder, and the new theme will be including this in the package. Thanks @michaeluno for looking to amend the conflict of naming.

michaeluno commented 10 years ago

I've removed the custom jQuery sortable plugin in 3.3.1b and it should fix this problem. Download.

patrickf0 commented 10 years ago

Still have the same Problem :/

patrickf0 commented 10 years ago

Minor error (see image) by the way

bildschirmfoto 2014-10-30 um 11 45 49

michaeluno commented 10 years ago

Looks like you are still not using the latest version.

Double check the framework version by inserting this argument in the field definition array.

    'after_fieldset'    => 'apf version: ' . AdminPageFramework_Registry::Version
        . ( AdminPageFramework_Registry::$bIsMinifiedVersion ? '.min' : '' ),

[Update] I forgot to apply the changes to the minified version. Now the minified version includes this fix so try it again. Sorry for the inconvenience!

patrickf0 commented 10 years ago

Works! ;)

ghost commented 10 years ago

Michael, based on reply above with displaying version number. Would it be worth your while to add a small script to enable disable dev mode which will basically display the version number in the footer and an update message next to it if there is a later version?

michaeluno commented 10 years ago

@cmwwebfx Will it be sufficient if it just displays the framework version number? Or should it check the latest version from an external site and display a notice?

ghost commented 10 years ago

either or is fine. my thought was just for version checking quickly, but then I thought if there was a small message like this: APF v3.3b | Latest $version only something simple might help when you need to know what version someone is running to get a report on an issue.

michaeluno commented 10 years ago

To get the framework version, it is already possible by hovering the mouse cursor over the text "powered by Admin Page Framework" in the footer. But meta boxes added by the framework don't add the footer information so you need to do the function call like the above.

To get the latest version, it will require to access an external site. There are two cases I can think of: the latest stable version and the development beta version. For the latest stable one, the external site to access will be wordpress.org but for the other it will be github.com. Some dislike external resource accesses done automatically. So I'm not sure if it is worthwhile to implement.

It is an interesting idea to think about though. If you really need it, post a new topic suggesting it.

ghost commented 10 years ago

Not something I would need at all, it was just an idea I was toying with when I saw the script you added above. For me what I love about this is it does not load up some external source, it was one main reason I dumped the last one I used.

michaeluno commented 10 years ago

I see.