Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

DataObjectManager Module /

Discuss the DataObjectManager module, and the related ImageGallery module.

Moderators: martimiz, UncleCheese, Sean, biapar, Willr, Ingo, swaiba, simon_w

files won't display on website


Reply


2 Posts   899 Views

Avatar
janulka

Community Member, 80 Posts

4 May 2011 at 7:58am

Files, or "Vedlegg" dataobjects do appear in CMS, but they won't show on website..

Vedlegg.php:

<?php

class Vedlegg extends DataObject
{
   static $db = array (
      'Navn' => 'Text',
      'Beskrivelse' => 'Text'
   );

   static $has_one = array (
      'Fil' => 'File',
      'VedleggSide' => 'VedleggSide'
   );

   public function getCMSFields_forPopup()
   {
      return new FieldSet(
         new TextField('Navn'),
         new TextareaField('Beskrivelse'),
         new FileIFrameField('Fil')
      );
   }
}

?>

VedleggSide.php:

<?php

class VedleggSide extends Page {
   
   public static $db = array(
   );
   
   public static $has_one = array(
   );
   
   static $icon = "images/treeicons/folder";
   
   function getCMSFields() {
    $fields = parent::getCMSFields();
   
    $manager = new FileDataObjectManager(
         $this, // Controller
         'Vedlegg', // Source name
         'Vedlegg', // Source class
         'Fil', // File name on DataObject
         array(
            'Navn' => 'Navn',
            'Beskrivelse' => 'Beskrivelse'
         ), // Headings
         'getCMSFields_forPopup' // Detail fields (function name or FieldSet object)
         // Filter clause
         // Sort clause
         // Join clause
      );
$fields->addFieldToTab("Root.Content.Vedlegg",$manager);
         
    return $fields;
   }
   
}

class VedleggSide_Controller extends Page_Controller {
   
}

?>

Layout/VedleggSide.ss:

<% if Vedlegg %>
   
<h2>Filer til nedlasting</h2>

<div class="vedlegg">
<ul>
<% control Vedlegg %>
<li<% if FirstLast %> class="$FirstLast"<% end_if %>><% control Fil %><img src="$icon" width="16" height="16" /><% end_control %>&nbsp; &nbsp;<a href="<% control Fil %>$Link<% end_control %>">$Navn</a>
<% if Beskrivelse %><br />$Beskrivelse<% end_if %></li>
<% end_control %>
</ul>
</div>

<% end_if %>

plz, what I am doing wrong here? thanks!

Avatar
UncleCheese

Forum Moderator, 4093 Posts

4 May 2011 at 10:00am

You forgot your has_many!