Drupal

Intranet Link to Lotus Notes

03.02.2010
 von Pascal
 | 0 Kommentare

If you want to add a menu entry with a link to a lotus notes application then the error message "The path 'notes://path' is either invalid or you do not have access to it." will show up.

The problem is that Drupal does not allow the Protocol "notes" by default.

The filter module will check whether the protocol is allowed or not in the function filter_xss_bad_protocol.

<?php
variable_get
('filter_allowed_protocols', array('http''https''ftp''news''nntp''telnet'
'mailto''irc''ssh''sftp''webcal''rtsp')));
?>

Warum Drupal?

29.01.2010
 von Lukas Fischer
 | 0 Kommentare

Von Kundenseite erhalte ich ab und zu die Frage: “Warum Drupal?”. Ich möchte diese Frage beantworten und dabei die Kunden sowie Entwickler Perspektiven berücksichtigen.

Kundensicht

Drupal ist einfach in der Nutzung
Die Administration ist logisch und klar strukturiert, auch bei sehr umfangreichen Webseiten.

Drupal ist flexibel und modular
Auf www.drupal.org befinden sich über 4000 zusätzliche Module welche jederzeit installiert werden können und somit die Funktionalität erweitern.

Neue Webseite und neue Services

17.11.2009
 von Lukas Fischer
 | 0 Kommentare

Ab sofort erscheint unsere neue Webseite. Mit dem Release der neuen Webseite ergänzen wir unser Produktportfolio mit einem erweiterten Internet Marketing Angebot sowie Consulting Angeboten.

Neu betreiben wir auch einen Newsletter den wir alle 3 Monate versenden.

Wir freuen uns auf ein aufregendes neues Jahr mit vielen interessanten Projekten und Arbeiten.

Drupal cheat sheet

02.07.2009
 von Pascal
 | 0 Kommentare

Snippets

Image Cache Usage

<?php
print theme('imagecache'$preset$image['filepath'], $alt$title,  $attributes); 
?>

Manually load a bunch of nodes with SQL

<?php
$nodes 
= array();
$sql "SELECT nid FROM content_type_event";
$result db_query($sql);
while (
$result && ($object db_fetch_object($result))) {
    
$nodes[] = node_load($object->nid);
}
?>

Manually load a menu

<?php
$menu_global 
menu_navigation_links("secondary-links"0);
$menu1 menu_navigation_links("primary-links"0);?>

netnode am DrupalMediaCamp

28.04.2009
 von Lukas Fischer
 | 0 Kommentare

Das DrupalMediaCamp stellt das Content Management Framework Drupal und dessen Nutzen in Medienunternehmen ins Zentrum. Auf dem Camp werden zahlreiche Medienkonzerne berichten, die Drupal bereits heute erfolgreich bei sich einsetzen. Lukas Fischer von netnode wird eine Session über "Die Zukunft von Drupal" halten.

Drupal access callback explained

27.04.2009
 von Lukas Fischer
 | 0 Kommentare

Whenever you have to write your own access function for a menu entry - here is the short explenation how to do this:

The menu entry should have a "access callback" definition. This defines the function which checks the access and returns true or false. You cann pass arguments via the 'access arguments' definition.

<?php
$items
['whatever/%/edit'] = array(
      
'title' => t('Edit'),
        
'page callback' => 'dosomething_edit',
        
'page arguments' => array(1),
    
'access callback' => 'check_edit',
    
'access arguments' => array(1),
    
'weight' => 1,
    
'type' => MENU_LOCAL_TASK,
);
?>

Create a DRUPAL node with Firefox/Ubiquity

08.09.2008
 von Lukas Fischer
 | 0 Kommentare

Inspiriert von http://tinyurl.com/5db7ag habe ich gleich ein eigenes Ubiquity Script ausprobiert. Es kommt oft vor, dass ich Inhalte aus einem Mail oder aus einer Website in ein Drupal Formular kopiere z.B. um einen Blogeintrag zu posten. Ubiquity erlaubt ein fast automatisierter Vorgang.

Das Resultat:

<?php
CmdUtils
.CreateCommand({
  
name"blog",
  
execute: function() {
    var 
CmdUtils.getTextFromHtml(CmdUtils.getHtmlSelection());
    var 
encodeURIComponent;
    
url 'http://www.netnode.ch/node/add/blog?t=e(s) + '&b=' e(s);
    
Utils.openUrlInBrowser(url);?>

Drupal praktisch 1 - Table Themer

20.08.2008
 von Lukas Fischer
 | 0 Kommentare

Ein typische Anwendung in CMS Administrationen ist das tabellarische Auflisten von Einträge. Das händische programmieren von Tabellen nimmt einem Drupal elegant ab.

<?php
// $nodes ist ein Node-Array
foreach ($nodes as $node) {
        
$rows[] = array('<a href="/node/'.$node->nid.'">'.$node->title.'</a>',
                
'<a href="/node/'.$node->nid.'/edit">Edit</a>');
}
$header = array('Titel''Option');
$output .= theme_table($header$rows);
?>

Drupal Filter manuell ausführen

18.08.2008
 von Lukas Fischer
 | 0 Kommentare

Es gibt immer wieder Situationen bei denen man die Filter Optionen von Drupal manuell ausführen muss. Das ist ganz einfach. Die Magie liegt im File filter.module (http://api.drupal.org/api/file/modules/filter/filter.module/5).

Die wichtigsten Funktionen:

_filter_url($text, $format), macht aus möglichen URLs klickbare Links, $format ist das Input-Filter-Format das beim Textfeld ausgewählt wurde. (1 = Filtered HTML, 2 PHP code, 3 = Full HTML)
_filter_autop($text), macht aus Newlines
's bzw.

's

Beispiel:

Drupal an der Fosdem 2008

27.02.2008
 von Lukas Fischer
 | 0 Kommentare

Vergangenes Wochenende fand die Fosdem 2008 (Free and open source software developer's european meeting) in Brüssel statt. Anlässlich dieses Treffens wurden im "Drupal Developers Room" (http://www.fosdem.org/2008/schedule/devroom/drupal) einige Präsentation zu Drupal gehalten.

Auf http://lvb.net/item/6026 sind 8 Präsentationen als Video abrufbar. Es werden interessante Themen wie Usability, Combining Amazon Web Services with Drupal, Drupal and MySQL High Availability, Web Service Development for Managers und Asset Management diskutiert.

Inhalt abgleichen