Page builder bug?

Any page I open in page builder, will automatically scramble all of my blocks up. I try ff and chrome and it happends in both.

So every time I add or adjust something in the page builder, I have to remember my layout and put everything back where I want. Annoying!

Bug? Or is there a fix?

This sentance says nothing, and its possibly spellt wrong.
Quote · 11 May 2011

Hello provide us with screen shot of bug please

PS: If possible do not write me personally, please try to ask on the forum first
Quote · 11 May 2011

It is a bug.  We have been telling Boonex about it forever, and at one point they claimed they fixed it, but they didn't.   It only happens in Chrome.  Your best bet is to only use Firefox or IE for development.

Quote · 11 May 2011

Why would a screen shot help here Sasha?  Surely you must know about this.   This bug has been around forever, but even if you didn't know about it the screenshot wouldn't tell you anything.   It basically just reverses the order of the blocks, top to bottom.  You would have to know what the block order was "before" for the screenshot to mean anything.

@barrydeez - I didn't see your comment that it happens in FF also - are you sure?   On mine, this is definitely Chrome specific.

Quote · 11 May 2011

I seriously think SashaE has keyboard macros set up for a few standard replies.

My opinions expressed on this site, in no way represent those of Boonex or Boonex employees.
Quote · 11 May 2011

I use Firefox for any Page Builder work. I've just got used to doing it that way. Ideally it'd work correctly in Chrome though.

Quote · 11 May 2011

Not just Chrome, Opera has the same problem...we had to align our blocks back  at least 3 times before we noticed this Bug was browser related...

Sleepless
Quote · 11 May 2011

I use FF 4 and it works just fine for me however the block scrambles in Chrome

builders_chrome.png · 36.7K · 272 views
builders_firefox4.PNG · 36.1K · 388 views
Be a dolphin, be creative in you own way and you will attract a audience
Quote · 11 May 2011

 

I seriously think SashaE has keyboard macros set up for a few standard replies.

I ask the same questions because many  troubles in dolphin happen because our customer use many of custom mods, modification, etc. I must sure that is dolphin bug not another!

 


PS: If possible do not write me personally, please try to ask on the forum first
Quote · 11 May 2011

 

Why would a screen shot help here Sasha?  Surely you must know about this.   This bug has been around forever, but even if you didn't know about it the screenshot wouldn't tell you anything.   It basically just reverses the order of the blocks, top to bottom.  You would have to know what the block order was "before" for the screenshot to mean anything.

@barrydeez - I didn't see your comment that it happens in FF also - are you sure?   On mine, this is definitely Chrome specific.

I am not God and do not know all the bugs in dolphin

PS: If possible do not write me personally, please try to ask on the forum first
Quote · 11 May 2011

Ok. It turns out that it is JUST Chrome. I often use both at the same time and forget...plus I just like to bitch.

Anyway, I have ran in to many chrome specific bugs, and its always the same reply about them; "Its because chrome is still beta." Eh...hell, I will deal.

This sentance says nothing, and its possibly spellt wrong.
Quote · 11 May 2011

Seems pageBuilder in 7.0.6 have bug. After short investigation I located issue:

inc\js\classes\BxDolPageBuilder.js (line 346) :

var iPerWidth = parseFloat( $(parent).css('width') );

in DOM we can see:

<div style="width: 66%;" class="buildColumn">

So this script expected that it will get 66 using this JS, but, unfortunately it returning real width of object ( as example 488px. So this iPerWidth variable have value: 488

After, we have in code:

var iPixWidth = Math.round( ( parseInt( this.options.pageWidth ) * iPerWidth ) / 100 );

so this variable have value 488 * 998 / 100 = 4870, crazy, isn`t it?

so our Column starting have params:

488% and 4870px

after recompilation of cache - all blocks become very big!

Quote · 16 May 2011

And, this is same for All browsers where I checked:

IE9, Chrome, FF4

Quote · 16 May 2011

Thanks Andrey ...because I am starting to have this bug too..And, I use the latest FF..And I have D7.0.3..Humm...However, I do have about 30+ mods installed...The problem is with the width and became very big...I do not believe it has to do with any browser..it seems it is dolphin bug...

Quote · 20 May 2011

I have the same problem  mostly in Opera.

Kids first
Quote · 20 May 2011

 

Hello provide us with screen shot of bug please

 

This is what happend to me when I tried to insert a FB Like code into my homepage block, my whole home page width got messed up. When I tried to correct it in my admin settings (Page Builder - Pages Block: Homepage) by removing the HTML block where I saved the iframe code for a like button, I noticed that my page width was over 5000px with all columns combined. In total it was 741%.

homepage

 

I checked all the other pages and it has the same values, but because I didnt touched the sliders they all appear as they where. But still have in total a value of 741%

 

other pages

 

The screenshot of my homepage page builder settings is now what it have done to make the website look normal for the time being. Anybody have any idea how I can solve this?

I have tried to set the max page width with different settings and put back. Uninstalled modules (everything that s something to do with changing layouts, like for example "Deanos Tools" and "Profile Customize") Nothing worked for me.

My ticket:

http://www.boonex.com/h/builders-pages-block-page-width-bug

Quote · 22 May 2011

Hmm, interesting, seems this is related with jQuery library, look:

here are interesting comments from Piki

In result of investigation was noticed that it happen only with fresh jquery versions (1.4.4, 1.5, 1.6.1)

here are small fix - inc\js\classes\BxDolPageBuilder.js

line 237:

var iColWidth = parseFloat( $Columns.eq(iSliderNum).css( 'width' ) );

change to:
var iColWidth = ( 100 * parseFloat($Columns.eq(iSliderNum).css('width')) / parseFloat($Columns.eq(iSliderNum).parent().css('width')) );

after, line 326:

aWidths[aWidths.length] = parseFloat( $(this).css('width') );

change to:

aWidths[aWidths.length] = ( 100 * parseFloat($(this).css('width')) / parseFloat($(this).parent().css('width')) );

then, line 348:

var iPerWidth = parseFloat( $(parent).css('width') );

change to:

var iPerWidth = ( 100 * parseFloat($(parent).css('width')) / parseFloat($(parent).parent().css('width')) );

and, your page builder will work like Charm :)

Quote · 22 May 2011

Thanks Andrew and Piki,

Works for me!

Quote · 22 May 2011

Tried making those changes but the problem still exists.

Quote · 22 May 2011

Don`t forget to clean JS caches if it enabled (by default) for your dolphin

Quote · 23 May 2011

I made changes that was listed by AndrewP. It trully woked like a charm.
(almost. After changing the columns order - it gives one more bug :) )

But after updates 7.0.7-7.0.8 and 7.0.8-7.0.9!.  The problem came back!
so i did:

  • jQuery after update again was 1.3.2 i returned it to 1.4.4
  • js class BxPageBuilder again was as for 1.3.2 jQuery lib!!!! so i did changes again.
  • cleaned the cache
  • Resized the column to normal (Couse bad size was saved :( ) (-if you visited Page Builder while bug lived (it lives after you updating the lib script))
If you updating the Dolphin script dont` forget to do this.
Or AndrewP do smth for next dolphin versions will be much higher jQuery lib version....And it will be recoded for that higher versions.
Quote · 30 Jan 2012

I've got the same issue in 7.0.4 - blocks in page builder are reordered on reloading of a page in Chrome. This is because Chrome sorts JSON arrays with blocks by block ID, thus messing up the order.

I've fixed that by adding a trailing space to every block ID while forming of the JSON object and by removing them in browsers upon reception.

In inc/classes/BxDolPageViewAdmin.php

around line 699:

                $this -> aBlocks[$iColumn][ (int)$aBlock['ID'] ] = _t( $aBlock['Caption'] );

change to:

                $this -> aBlocks[$iColumn][ $aBlock['ID']." " ] = _t( $aBlock['Caption'] );

 
around line 736:

$this -> aBlocksInactive[ (int)$aBlock['ID'] ] = _t( $aBlock['Caption'] );

change to:

$this -> aBlocksInactive[ $aBlock['ID']." " ] = _t( $aBlock['Caption'] );

around line 739:

$this -> aBlocksSamples[ (int)$aBlock['ID'] ] = _t( $aBlock['Caption'] );

change to:

$this -> aBlocksSamples[ $aBlock['ID']." " ] = _t( $aBlock['Caption'] );

 

In /inc/js/classes/BxDolPageBuilder.js

around line 520:

BxDolPageBuilder.prototype.drawBlock = function( iBlockID, sBlockCaption, eColumnCont ) {

add just after:

iBlockID = iBlockID.replace(/^\s+|\s+$/g,''); //removing spaces

 
Voila! Should work.
Quote · 25 Jun 2012

Same thing should be done for those who use AQB Profile Composer.

In modules/aqb/pcomposer/classes/AqbPCPageViewAdmin.php

 

around line 275:

$this -> aBlocks[$iColumn][ $k ] = _t( $v['Caption'] );

change to:

$this -> aBlocks[$iColumn][ $k." " ] = _t( $v['Caption'] );
around line 292:
$this -> aBlocksInactive[$value['id']] = _t( $value['params']['Caption'] );
change to:
$this -> aBlocksInactive[$value['id']." "] = _t( $value['params']['Caption'] );
around line 297:
     $this -> aBlocksInactive[ $value['id'] ] = _t( $value['params']['Caption'] );
change to:
     $this -> aBlocksInactive[ $value['id']." " ] = _t( $value['params']['Caption'] );
 
In modules/aqb/pcomposer/js/AqbPageBuilder.js
around line 521:
BxDolPageBuilder.prototype.drawBlock = function( iBlockID, sBlockCaption, eColumnCont ) {
add just after:
iBlockID = iBlockID.replace(/^\s+|\s+$/g,'');
 
 
 

And for AQB Group Composer.

In modules/aqb/gcomposer/classes/AqbGCPageViewAdmin.php

 

around line 276:

$this -> aBlocks[$iColumn][ $k ] = _t( $v['Caption'] );

change to:

$this -> aBlocks[$iColumn][ $k." " ] = _t( $v['Caption'] );
around line 293:
$this -> aBlocksInactive[$value['id']] = _t( $value['params']['Caption'] );
change to:
$this -> aBlocksInactive[$value['id']." "] = _t( $value['params']['Caption'] );
around line 298:
     $this -> aBlocksInactive[ $value['id'] ] = _t( $value['params']['Caption'] );
change to:
     $this -> aBlocksInactive[ $value['id']." " ] = _t( $value['params']['Caption'] );
 
In modules/aqb/gcomposer/js/AqbPageBuilder.js
around line 521:
BxDolPageBuilder.prototype.drawBlock = function( iBlockID, sBlockCaption, eColumnCont ) {
add just after:
iBlockID = iBlockID.replace(/^\s+|\s+$/g,'');
Quote · 25 Jun 2012
 
 
Below is the legacy version of the Boonex site, maintained for Dolphin.Pro 7.x support.
The new Dolphin solution is powered by UNA Community Management System.