Custom Block not using Pretty URLs

Permalink
I've created 2 custom blocks based off of the Content Block and the HTML Block. The reason for the customization was to create two areas per block for the client: a heading area and body content area for the block so that I could separately styled them.

The issue is that when the client uses "Insert Link to Page" to link to another page on the site, a URL like, for example,http://example.com/index.php?cID=167... isn't converted to a pretty URL.

The default Concrete Block converts those "Insert Link to Page" links, but I'm not sure how to do it for my custom block. I feel like I'm just missing a little bit of code. Any help would be greatly appreciated.

I've attached some screenshots: custom block interface, the HTML of that block, and an example of what a custom block looks like on the frontend. The screenshot custom-block-look.png shows where the Heading appears (Choose Your Path) and the Body Content (Not sure which program...).

I've also put the code for the relevant custom block files below.

view.php

<?php   
defined('C5_EXECUTE') or die("Access Denied."); 
?>
<div class="sideColumnBox">
<?php
$html = Loader::helper('html');
echo "<div class=\"sideColumnBoxHeading\">{$heading}</div>";
echo "<div class=\"sideColumnBoxBody\">{$bodycontent}</div>";
?>
</div>



form_setup_html.php

<?php
defined('C5_EXECUTE') or die(_("Access Denied."));
$al = Loader::helper('concrete/asset_library');
echo '<div class="ccm-block-field-group">';
echo '<p style="font-weight:bold;">' . t('Heading') . '</p>';
echo $form->text('heading', $heading, array('style' => 'width: 550px'));
echo '</div>';
echo '<div class="ccm-block-field-group">';
echo '<p style="font-weight:bold;">' . t('Body Content') . '</p>';
Loader::element('editor_init');
Loader::element('editor_config');
Loader::element('editor_controls', array('mode' => 'full'));
echo $form->textarea('bodycontent', $bodycontent, array('class' =>
'ccm-advanced-editor'));
echo '</div>';



controller.php

<?php
defined('C5_EXECUTE') or die(_("Access Denied."));
   class TCISideColumnBoxBlockController extends BlockController {
      protected $btTable = 'btTCISideColumnBox';
      protected $btInterfaceWidth = "600";
      protected $btInterfaceHeight = "400";
      public function getBlockTypeDescription() {
         return t("Adds a side column box to the sidebar.");
      }
      public function getBlockTypeName() {
         return t("Side Column Box");
      }
   }
?>



Can anyone help me??

Thanks!
George

3 Attachments

emsconcrete
 
emsconcrete replied on at Permalink Reply
emsconcrete
Anyone? Anyone? Bueller?