diff options
author | Silvio <silvio@devlet.com.br> | 2010-12-06 11:39:32 -0200 |
---|---|---|
committer | Silvio <silvio@devlet.com.br> | 2010-12-06 11:39:32 -0200 |
commit | 8504fd7f6600543f73345ba0bf4eb9826a50b742 (patch) | |
tree | cbe983e3a89a6e0be640d57bb89b3d2caa799b5c /exif_helper | |
parent | ebbcd617393c83364699592dfeca8c6e7c3a578a (diff) | |
download | exif-8504fd7f6600543f73345ba0bf4eb9826a50b742.tar.gz exif-8504fd7f6600543f73345ba0bf4eb9826a50b742.tar.bz2 |
Diffstat (limited to 'exif_helper')
-rw-r--r-- | exif_helper/CVS/Entries | 3 | ||||
-rw-r--r-- | exif_helper/CVS/Repository | 1 | ||||
-rw-r--r-- | exif_helper/CVS/Root | 1 | ||||
-rw-r--r-- | exif_helper/CVS/Tag | 1 | ||||
-rw-r--r-- | exif_helper/exif_helper.info | 5 | ||||
-rw-r--r-- | exif_helper/exif_helper.module | 80 |
6 files changed, 91 insertions, 0 deletions
diff --git a/exif_helper/CVS/Entries b/exif_helper/CVS/Entries new file mode 100644 index 0000000..7c17ed2 --- /dev/null +++ b/exif_helper/CVS/Entries @@ -0,0 +1,3 @@ +/exif_helper.info/1.1.2.1/Thu Feb 5 20:11:53 2009/-kb/TDRUPAL-6--1 +/exif_helper.module/1.1.2.2/Fri Mar 19 22:17:00 2010//TDRUPAL-6--1 +D diff --git a/exif_helper/CVS/Repository b/exif_helper/CVS/Repository new file mode 100644 index 0000000..3908928 --- /dev/null +++ b/exif_helper/CVS/Repository @@ -0,0 +1 @@ +contributions/modules/exif/exif_helper diff --git a/exif_helper/CVS/Root b/exif_helper/CVS/Root new file mode 100644 index 0000000..127da18 --- /dev/null +++ b/exif_helper/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal-contrib diff --git a/exif_helper/CVS/Tag b/exif_helper/CVS/Tag new file mode 100644 index 0000000..d7ee0a3 --- /dev/null +++ b/exif_helper/CVS/Tag @@ -0,0 +1 @@ +TDRUPAL-6--1 diff --git a/exif_helper/exif_helper.info b/exif_helper/exif_helper.info new file mode 100644 index 0000000..a63c51e --- /dev/null +++ b/exif_helper/exif_helper.info @@ -0,0 +1,5 @@ +; $Id:
+name = Exif Helper
+description = "Some helper functions."
+package = Image
+core = 6.x
\ No newline at end of file diff --git a/exif_helper/exif_helper.module b/exif_helper/exif_helper.module new file mode 100644 index 0000000..e19ca5f --- /dev/null +++ b/exif_helper/exif_helper.module @@ -0,0 +1,80 @@ +<?php +// $Id: exif_helper.module,v 1.1.2.2 2010/03/19 22:17:00 rapsli Exp $ + +/** + * @file Intention of this little module: exif.module needs to have a weight of -10 + * at least it has to be processed before CCK is processed, so that EXIF information + * can be taken from the fields and be written into the CCK fields. + * + * Problem: We don't want to display the emty fields on node creation, since they are + * reserved for exif information -> we don't want to confuse users with this, so are + * going to make them hidden -> Information needs to be processed AFTER CCK. + * + * Solution: Creating a new little module. + */ + +function exif_helper_menu() { + $items['admin/settings/exif/visibility'] = array( + 'title' => 'visibility', + 'page callback' => 'drupal_get_form', + 'page arguments' => array('exif_helper_settings_form'), + 'access arguments' => array('administer site configuration'), + 'description' => t('Some visibility settings'), + 'access callback' => 'user_access', + 'type' => MENU_LOCAL_TASK, + ); + return $items; +} + +/** + * implementation of hook_form_alter + * @param $form_id + * @param $form + */ +function exif_helper_form_alter(&$form, $form_state, $form_id) { + + if ($form['#id'] != 'node-form') { + return; + } + + $ar_keys = array(); + foreach ($form as $key => $value) { + $ar_keys[] = array('field_name' => $key); + } + $exif = _exif_get_class(); + $ar_exif_fields = $exif->getExifFields($ar_keys); + $node = $form['#node']; + + if (($node->nid > 0 && variable_get('exif_helper_show_on_update', 0)==0) || + (!isset($node->nid) && variable_get('exif_helper_show_on_creation', 0) == 0)) { + foreach ($ar_exif_fields as $variable) { + $form["field_" . $variable['section'] . "_" . $variable['tag']]['#type'] = 'hidden'; + } + } + +} + +/** + * Form definition for the admin of the helper module + */ +function exif_helper_settings_form() { + $form['exif_helper'] = array( + '#value' => t('When a user creates a node by default the CCK information will not be shown. + This doesn\'t make any sense and would only confuse the user. The values for those fields + is taken from the picture it-self. Nevertheless the information is visibile when you display + the node just plain or through views or whatever. We are just talking here about the actual + creation form'), + ); + $form['exif_helper_show_on_creation'] = array( + '#type' => 'checkbox', + '#title' => t('Show CCK Fields on Node-Creation form'), + '#default_value' => variable_get('exif_helper_show_on_creation', 0), + ); + + $form['exif_helper_show_on_update'] = array( + '#type' => 'checkbox', + '#title' => t('Show CCK Fields on Node-Update form'), + '#default_value' => variable_get('exif_helper_show_on_update', 0), + ); + return system_settings_form($form); +}
\ No newline at end of file |