Yes, I have seen all the posts regarding how to allow to embed youtube and vimeo, I've done it and can add youtube, and I have already re installed like four times and can't find a way to make this editor to permit anything I post and specially soundcloud embed player.
I am not a programmer, so would you be so kind to instruct me on how to make it to accept anything, I think I already lost hair.
- I will be the only one to add content, so no harm to my baby here -
Thanks a lot
|
if referring to the tinyMCE editor for html blocks, change to html view before pasting content. If this does not work still, then after adding your content this way, go into the database table and edit there. caredesign.net |
Be more specific, even if you think you are being redundant, about where and what and how you are wanting to do this thing. Geeks, making the world a better place |
if referring to the tinyMCE editor for html blocks, change to html view before pasting content. If this does not work still, then after adding your content this way, go into the database table and edit there.
lol, can you imagine like more than 100 pages and going to add the music via database. You can't be serious!! That is just crazy.
@geek_girl
Currently I can embed youtube videos, and I always use html, actually I always write my pages on html with a kinda template to simulate my site and then I just paste the snippet into the editor.
But now, when I put any soundcloud iframe it simply cleans everything and leaves a <p></p>
|
if referring to the tinyMCE editor for html blocks, change to html view before pasting content. If this does not work still, then after adding your content this way, go into the database table and edit there.
lol, can you imagine like more than 100 pages and going to add the music via database. You can't be serious!! That is just crazy.
@geek_girl
Currently I can embed youtube videos, and I always use html, actually I always write my pages on html with a kinda template to simulate my site and then I just paste the snippet into the editor.
But now, when I put any soundcloud iframe it simply cleans everything and leaves a <p></p>
Still not specific enough for my feeble brain but I will assume. You are talking about building pages in the page builder?
If that is the case, then you should be able to add iframes. I was told that in the backend/admin that when you add content it is not passed through the htmlpurifier. So if you turn off TinyMCE (TinyMCE will strip out iframes unless you change the editor to allow them); if you turn off TinyMCE, then you should be able to post any firame you wish. If you can not, then something is broken and to figure out where would mean being able to access your site and poke around and try to figure out what is stripping out the iframe.
Wait, hold the lift. Instead of writing your html in some external editor... Wait, explain exactly what you are doing, how you are doing it, what editor you may be using, are you using Dolphin page builder, etc.?
Geeks, making the world a better place |
What are you adding Soundcloud Music to & how? I have added to Articles & Pages without any problem at all. Are you allowing the Soundcloud Player time to load? Sometimes it can be slow off Soundcloud.
Edited to include Pages as I've since tested & works fine for me on Pages too.
|
I am dead serious. If you do a search through these forums, you will find other posts where the tinyMCE is not allowing iframed and javascript items to be used in the editor, and one of the recommended solutions was to manually enter into database table. But, I have a different solution - use a php block instead. Start code with ?> and end with <?php { }, like this
?>
blah blah html code, iframe code or whatever
<?php
The tinyMCE is stripping the code out, so using a php block will not because there is not tinyMCE to deal with.
if referring to the tinyMCE editor for html blocks, change to html view before pasting content. If this does not work still, then after adding your content this way, go into the database table and edit there.
lol, can you imagine like more than 100 pages and going to add the music via database. You can't be serious!! That is just crazy.
@geek_girl
Currently I can embed youtube videos, and I always use html, actually I always write my pages on html with a kinda template to simulate my site and then I just paste the snippet into the editor.
But now, when I put any soundcloud iframe it simply cleans everything and leaves a <p></p>
caredesign.net |
Why would that be when it works fine on mine, ProfessorSr? Would it be to do with the server architecture? Just trying to understand how it can work for me with no problems. |
I rarely use html blocks, and never when I need to add any kind of content that is not strictly html (such as iframes and javascript). I have always used the php block because this has been an issue from a long time ago. Whether or not it was resolved by dolphin, I do not know, because I have always used php blocks. So, if it is not working for someone, then they can try using a php block - they may find things more easier. If you search the forums for 'stripping'. You will see the countless number of related psots caredesign.net |
Here is one problem with the HTML Blocks. You can not switch off TinyMCE and have the block remember it was off. So if you go back to edit the HTML Block, you will lose the code because the HTML Block will load with the TinyMCE editor and when TinyMCE loads it removes the code you added by hand. It would be nice if the HTML Block could remember if you turned off the TinyMCE when it loads the editor for the block. If you are turning off TinyMCE for an HTML Block, save the code you enter externally in a text file. You will have to reenter any javascript code and if you don't save it to an external text file, you won't have it any more.
So, the gist of it is that Dolphin needs to remember the state of the WYSIWYG editor for HTML blocks.
However, Professor has the correct idea, don't use HTML blocks if you are going to be adding javascript code, iframes, etc. because TinyMCE will strip out code. To make it easy to add a PHP Block, use Deano's Tools or his other free module, add PHP block item to the builders, Just visit Dean's Market page to find those tools.
Geeks, making the world a better place |
Sorry, its not html blocks, its the editor in a group. -- There is no point to use those html blocks anyway --
Update: Don't know where I touched, but its accepting everything now.
Why don't boonex make that thing free and usable?
Thanks to all, I will compare the files with a original boonex and share the modifs soon
|
The editor that available when you create or edit a group is not just available to admin. Anyone that creates a group can. So iframe are stripped because they are dangerous. That's why it not free and usable as you put it. It must be restricted to protect your site from malicious code. https://www.deanbassett.com |
in my case only admins will use it, no one will create groups.
Does the forums also use the same editor?
(now that I think, In this case there will be users answering)
|
this is an option (I will just give a brief description). Since you say only admin will be adding Groups, you could create a php block on the Groups View page which contains the code to display the soundcloud player. This block could be coded to not appear if no data.
You could use:
?>
<iframe width="100%" height="450" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/<?php echo $track_id ?>&auto_play=false&hide_related=false&visual=true"></iframe>
<?php { }
then - create a field on the Add/Edit form called Soundcloud. This field would be used to enter the track id of the sound you are embedding
as an example, I have a section for youtube videos that I have added. You could use the same technique for just about anything you want to add.
EDIT - if by chance later on you want to allow users to add Soundcloud embeds, this will keep the stripping from happening, and keep persons from putting in content that could screw your website up.
caredesign.net |
I have touched on this before, users are controlled by the htmlpurifer, so just edit the htmpurifier as I have done and change it to a whitelist of allowed iframe sites.
You can give your users the freedom to add iframes from any source you trust. The switch over to a whitelist of trusted sources is quite easy to do.
Geeks, making the world a better place |
this is an option (I will just give a brief description). Since you say only admin will be adding Groups, you could create a php block on the Groups View page which contains the code to display the soundcloud player. This block could be coded to not appear if no data.
You could use:
?>
<iframe width="100%" height="450" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/<?php echo $track_id ?>&auto_play=false&hide_related=false&visual=true"></iframe>
<?php { }
then - create a field on the Add/Edit form called Soundcloud. This field would be used to enter the track id of the sound you are embedding
as an example, I have a section for youtube videos that I have added. You could use the same technique for just about anything you want to add.
EDIT - if by chance later on you want to allow users to add Soundcloud embeds, this will keep the stripping from happening, and keep persons from putting in content that could screw your website up.
ok, sounds really nice and clean. I added the PHP block, now to create the field, should it be created manually on modules/boonex/groups/classes/BxGroupsFormAdd.php or should it be on the DB or in the administration panel?
|
You would need to create the field on the form and in the database. the whole process is a bit more involved (you have to make the template for the block as well) but we can walk you through each part. My earlier example was a half written one just to give an example.
After you add the field to the database and to the form on the Add page, you next have to create the block that displays the soundcloud embed.
Add this to BxGroupsPageView.php (change the section in blue to match your database field name):
function getBlockCode_Soundcloud() { if ($this->aDataEntry['soundcloud_id']) { return array($this->_oTemplate->blockSoundcloud ($this->aDataEntry)); } else { return; } }
Add this to BxGroupsTemplate.php:
function blockSoundcloud (&$aDataEntry) { $aVars = array ( 'soundcloud_id' => $aDataEntry['soundcloud_id'], ); return $this->parseHtmlByName('block_soundcloud', $aVars); }
create a page called block_soundcloud.html and save in groups/templates/base/ and add this to that page:
<div class="bx-def-font-large" style="margin-top: 15px;"> <iframe width="100%" height="450" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/__soundcloud_id__&auto_play=false&hide_related=false&visual=true"></iframe> </div>
Then, run this sql query:
INSERT INTO `sys_page_compose` (`ID`, `Page`, `PageWidth`, `Desc`, `Caption`, `Column`, `Order`, `Func`, `Content`, `DesignBox`, `ColWidth`, `Visible`, `MinWidth`, `Cache`) VALUES (NULL, 'bx_groups_view', '1140px', 'Group''s soundcloud block', '_bx_groups_block_soundcloud', '0', '0', 'Soundcloud', '', '1', '71.9', 'non,memb', '0', '0');
Then clear cache, and that should be it.
caredesign.net |
Hi,
Would you mind to explain how to "You would need to create the field on the form and in the database"
Thanks
|
You would need to add a field to the BxGroupsFormAdd.php file to display the field. Similar to this:
'soundcloud_id' => array( 'type' => 'text', 'name' => 'soundcloud_id', 'caption' => _t('_bx_groups_form_caption_soundcloud_id'), 'required' => false, 'db' => array ( 'pass' => 'Xss', ), ),
And in the bx_groups_main table, you would need to add the field. In my example it would be called soundcloud_id.
caredesign.net |
You would need to add a field to the BxGroupsFormAdd.php file to display the field. Similar to this:
'soundcloud_id' => array( 'type' => 'text', 'name' => 'soundcloud_id', 'caption' => _t('_bx_groups_form_caption_soundcloud_id'), 'required' => false, 'db' => array ( 'pass' => 'Xss', ), ),
And in the bx_groups_main table, you would need to add the field. In my example it would be called soundcloud_id.
All done and received a :
Found error in the file '/home/site/public_html/crash/inc/classes/BxDolForm.php' at line206. Called 'db_res' function with erroneous argument #0.
Mysql error: Unknown column 'soundcloud_id' in 'field list'
I created the mysql by copying the bx_groups_sounds table
|
You do not need to create a new database table. Just add the field to the existing Bx_Groups_Main table.
you can run this in phpMyadmin:
ALTER TABLE `bx_groups_main` ADD `soundcloud_id` VARCHAR(45) NOT NULL ;
caredesign.net |
You do not need to create a new database table. Just add the field to the existing Bx_Groups_Main table.
you can run this in phpMyadmin:
ALTER TABLE `bx_groups_main` ADD `soundcloud_id` VARCHAR(45) NOT NULL ;
Thank you very much Sir. You've made my day //
|
Coolio!!! Glad to be of some help around here. caredesign.net |