Author: ornicar2
Date: 2010-01-25 02:21:14 +0100 (Mon, 25 Jan 2010)
New Revision: 27152

Added:
   plugins/dmContactPlugin/LICENSE
   plugins/dmContactPlugin/README
   plugins/dmContactPlugin/config/
   plugins/dmContactPlugin/config/app.yml
   plugins/dmContactPlugin/config/dm/
   plugins/dmContactPlugin/config/dm/modules.yml
   plugins/dmContactPlugin/config/doctrine/
   plugins/dmContactPlugin/config/doctrine/schema.yml
   plugins/dmContactPlugin/lib/
   plugins/dmContactPlugin/lib/filter/
   plugins/dmContactPlugin/lib/filter/doctrine/
   
plugins/dmContactPlugin/lib/filter/doctrine/PluginDmContactFormFilter.class.php
   plugins/dmContactPlugin/lib/form/
   plugins/dmContactPlugin/lib/form/doctrine/
   plugins/dmContactPlugin/lib/form/doctrine/PluginDmContactForm.class.php
   plugins/dmContactPlugin/lib/model/
   plugins/dmContactPlugin/lib/model/doctrine/
   plugins/dmContactPlugin/lib/model/doctrine/PluginDmContact.class.php
   plugins/dmContactPlugin/lib/model/doctrine/PluginDmContactTable.class.php
   plugins/dmContactPlugin/modules/
   plugins/dmContactPlugin/modules/dmContact/
   plugins/dmContactPlugin/modules/dmContact/actions/
   plugins/dmContactPlugin/modules/dmContact/actions/actions.class.php
   plugins/dmContactPlugin/modules/dmContact/actions/components.class.php
   plugins/dmContactPlugin/modules/dmContact/lib/
   plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactActions.class.php
   
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactComponents.class.php
   plugins/dmContactPlugin/modules/dmContact/templates/
   plugins/dmContactPlugin/modules/dmContact/templates/_form.php
   plugins/dmContactPlugin/modules/dmContactAdmin/
   plugins/dmContactPlugin/modules/dmContactAdmin/actions/
   plugins/dmContactPlugin/modules/dmContactAdmin/actions/actions.class.php
   plugins/dmContactPlugin/modules/dmContactAdmin/config/
   plugins/dmContactPlugin/modules/dmContactAdmin/config/generator.yml
   plugins/dmContactPlugin/modules/dmContactAdmin/lib/
   
plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminExport.class.php
   plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminForm.php
   
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorConfiguration.class.php
   
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorHelper.class.php
   plugins/dmContactPlugin/modules/dmContactAdmin/templates/
Log:
[Diem][dmContactPlugin] initial commit

Added: plugins/dmContactPlugin/LICENSE
===================================================================
--- plugins/dmContactPlugin/LICENSE                             (rev 0)
+++ plugins/dmContactPlugin/LICENSE     2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,19 @@
+Copyright (c) 2010 Thibault Duplessis
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
\ No newline at end of file

Added: plugins/dmContactPlugin/README
===================================================================
--- plugins/dmContactPlugin/README                              (rev 0)
+++ plugins/dmContactPlugin/README      2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,13 @@
+dmContentReaderPlugin
+=================
+
+The `dmContentReaderPlugin` allows to display a typical contact form.
+By default, contact requests sent with the form are stored in database.
+The plugin packages a Diem front widget and an admin interface to manage 
contact requests.
+Integrates recaptcha validation.
+The plugin is fully extensible. Only works with [Diem 
5.0](http://diem-project.org/) installed.
+
+Documentation
+-------------
+
+See the online documentation : [Diem Contact plugin 
documentation](http://diem-project.org/plugins/dmcontactplugin)
\ No newline at end of file

Added: plugins/dmContactPlugin/config/app.yml
===================================================================
--- plugins/dmContactPlugin/config/app.yml                              (rev 0)
+++ plugins/dmContactPlugin/config/app.yml      2010-01-25 01:21:14 UTC (rev 
27152)
@@ -0,0 +1,6 @@
+all:
+  recaptcha:
+    # get your recaptcha keys on http://recaptcha.net/api/getkey
+    public_key:
+    private_key:
+    enabled:      false
\ No newline at end of file

Added: plugins/dmContactPlugin/config/dm/modules.yml
===================================================================
--- plugins/dmContactPlugin/config/dm/modules.yml                               
(rev 0)
+++ plugins/dmContactPlugin/config/dm/modules.yml       2010-01-25 01:21:14 UTC 
(rev 27152)
@@ -0,0 +1,8 @@
+Project:
+
+  Feedback:
+
+    dmContact:
+      name:            Contact
+      actions:
+        form:
\ No newline at end of file


Property changes on: plugins/dmContactPlugin/config/dm/modules.yml
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/config/doctrine/schema.yml
===================================================================
--- plugins/dmContactPlugin/config/doctrine/schema.yml                          
(rev 0)
+++ plugins/dmContactPlugin/config/doctrine/schema.yml  2010-01-25 01:21:14 UTC 
(rev 27152)
@@ -0,0 +1,6 @@
+DmContact:  
+  actAs:              [ Timestampable ]  
+  columns:  
+    name:             { type: string(255), notnull: true }
+    email:            { type: string(255), notnull: true }
+    body:             { type: clob }
\ No newline at end of file


Property changes on: plugins/dmContactPlugin/config/doctrine/schema.yml
___________________________________________________________________
Added: svn:executable
   + *

Added: 
plugins/dmContactPlugin/lib/filter/doctrine/PluginDmContactFormFilter.class.php
===================================================================
--- 
plugins/dmContactPlugin/lib/filter/doctrine/PluginDmContactFormFilter.class.php 
                            (rev 0)
+++ 
plugins/dmContactPlugin/lib/filter/doctrine/PluginDmContactFormFilter.class.php 
    2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * PluginDmContact form.
+ *
+ * @package    ##PROJECT_NAME##
+ * @subpackage filter
+ * @author     ##AUTHOR_NAME##
+ * @version    SVN: $Id: sfDoctrineFormFilterPluginTemplate.php 23810 
2009-11-12 11:07:44Z Kris.Wallsmith $
+ */
+abstract class PluginDmContactFormFilter extends BaseDmContactFormFilter
+{
+}


Property changes on: 
plugins/dmContactPlugin/lib/filter/doctrine/PluginDmContactFormFilter.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/lib/form/doctrine/PluginDmContactForm.class.php
===================================================================
--- plugins/dmContactPlugin/lib/form/doctrine/PluginDmContactForm.class.php     
                        (rev 0)
+++ plugins/dmContactPlugin/lib/form/doctrine/PluginDmContactForm.class.php     
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * PluginDmContact form.
+ *
+ * This form uses the sfWidgetFormReCaptcha widget
+ *
+ * The ReCaptcha API documentation can be found at 
http://recaptcha.net/apidocs/captcha/
+ *
+ * To be able to use this widget, you need an API key: 
http://recaptcha.net/api/getkey
+ *
+ * As it's not possible to change the name of ReCaptcha fields, you will have 
to add them manually
+ * when binding a form from an HTTP request.
+ *
+ * Here's a typical usage when embedding a captcha in a form with a 
contact[%s] name format:
+ *
+ *    $captcha = array(
+ *      'recaptcha_challenge_field' => 
$request->getParameter('recaptcha_challenge_field'),
+ *      'recaptcha_response_field'  => 
$request->getParameter('recaptcha_response_field'),
+ *    );
+ *    $this->form->bind(array_merge($request->getParameter('contact'), 
array('captcha' => $captcha)));
+ */
+abstract class PluginDmContactForm extends BaseDmContactForm
+{
+  public function setup()
+  {
+    parent::setup();
+    
+    $this->validatorSchema['body']
+    ->setOption('required', true)
+    ->setMessage('required', 'Please enter a message');
+
+    $this->changeToEmail('email');
+
+    if ($this->isCaptchaEnabled())
+    {
+      $this->addCaptcha();
+    }
+  }
+
+  public function addCaptcha()
+  {
+    $this->widgetSchema['captcha'] = new sfWidgetFormReCaptcha(array(
+      'public_key' => sfConfig::get('app_recaptcha_public_key')
+    ));
+
+    $this->validatorSchema['captcha'] = new sfValidatorReCaptcha(array(
+      'private_key' => sfConfig::get('app_recaptcha_private_key')
+    ));
+  }
+
+  public function isCaptchaEnabled()
+  {
+    return sfConfig::get('app_recaptcha_enabled');
+  }
+}
\ No newline at end of file


Property changes on: 
plugins/dmContactPlugin/lib/form/doctrine/PluginDmContactForm.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/lib/model/doctrine/PluginDmContact.class.php
===================================================================
--- plugins/dmContactPlugin/lib/model/doctrine/PluginDmContact.class.php        
                        (rev 0)
+++ plugins/dmContactPlugin/lib/model/doctrine/PluginDmContact.class.php        
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * PluginDmContact
+ * 
+ * This class has been auto-generated by the Doctrine ORM Framework
+ * 
+ * @package    ##PACKAGE##
+ * @subpackage ##SUBPACKAGE##
+ * @author     ##NAME## <##EMAIL##>
+ * @version    SVN: $Id: Builder.php 6820 2009-11-30 17:27:49Z jwage $
+ */
+abstract class PluginDmContact extends BaseDmContact
+{
+
+}
\ No newline at end of file


Property changes on: 
plugins/dmContactPlugin/lib/model/doctrine/PluginDmContact.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/lib/model/doctrine/PluginDmContactTable.class.php
===================================================================
--- plugins/dmContactPlugin/lib/model/doctrine/PluginDmContactTable.class.php   
                        (rev 0)
+++ plugins/dmContactPlugin/lib/model/doctrine/PluginDmContactTable.class.php   
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,7 @@
+<?php
+/**
+ */
+class PluginDmContactTable extends myDoctrineTable
+{
+
+}
\ No newline at end of file


Property changes on: 
plugins/dmContactPlugin/lib/model/doctrine/PluginDmContactTable.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/modules/dmContact/actions/actions.class.php
===================================================================
--- plugins/dmContactPlugin/modules/dmContact/actions/actions.class.php         
                (rev 0)
+++ plugins/dmContactPlugin/modules/dmContact/actions/actions.class.php 
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,11 @@
+<?php
+
+require_once 
realpath(dirname(__FILE__).'/..').'/lib/BasedmContactActions.class.php';
+
+/**
+ * Contact actions
+ */
+class dmContactActions extends BasedmContactActions
+{
+
+}


Property changes on: 
plugins/dmContactPlugin/modules/dmContact/actions/actions.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/modules/dmContact/actions/components.class.php
===================================================================
--- plugins/dmContactPlugin/modules/dmContact/actions/components.class.php      
                        (rev 0)
+++ plugins/dmContactPlugin/modules/dmContact/actions/components.class.php      
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,13 @@
+<?php
+
+require_once 
realpath(dirname(__FILE__).'/..').'/lib/BasedmContactComponents.class.php';
+
+/**
+ * Contact components
+ * 
+ * No redirection nor database manipulation ( insert, update, delete ) here
+ */
+class dmContactComponents extends BasedmContactComponents
+{
+
+}


Property changes on: 
plugins/dmContactPlugin/modules/dmContact/actions/components.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: 
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactActions.class.php
===================================================================
--- 
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactActions.class.php    
                            (rev 0)
+++ 
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactActions.class.php    
    2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,37 @@
+<?php
+/**
+ * Contact actions
+ */
+class BasedmContactActions extends myFrontModuleActions
+{
+
+  public function executeFormWidget(dmWebRequest $request)
+  {
+    $form = $this->forms['DmContact'];
+
+    if ($request->isMethod('post'))
+    {
+      $data = $request->getParameter($form->getName());
+
+      if($form->isCaptchaEnabled())
+      {
+        $data = array_merge($data, array('captcha' => array(
+          'recaptcha_challenge_field' => 
$request->getParameter('recaptcha_challenge_field'),
+          'recaptcha_response_field'  => 
$request->getParameter('recaptcha_response_field'),
+        )));
+      }
+
+      $form->bind($data);
+
+      if ($form->isValid())
+      {
+        $form->save();
+
+        $this->getUser()->setFlash('contact_form_valid', true);
+
+        $this->redirectBack();
+      }
+    }
+  }
+
+}
\ No newline at end of file

Added: 
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactComponents.class.php
===================================================================
--- 
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactComponents.class.php 
                            (rev 0)
+++ 
plugins/dmContactPlugin/modules/dmContact/lib/BasedmContactComponents.class.php 
    2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,13 @@
+<?php
+/**
+ * Contact actions
+ */
+class BasedmContactComponents extends myFrontModuleComponents
+{
+
+  public function executeForm()
+  {
+    $this->form = $this->forms['DmContact'];
+  }
+  
+}
\ No newline at end of file

Added: plugins/dmContactPlugin/modules/dmContact/templates/_form.php
===================================================================
--- plugins/dmContactPlugin/modules/dmContact/templates/_form.php               
                (rev 0)
+++ plugins/dmContactPlugin/modules/dmContact/templates/_form.php       
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,33 @@
+<?php
+// Contact : Form
+// Vars : $form
+
+if($sf_user->hasFlash('contact_form_valid'))
+{
+  echo £('p.form_valid', __('Thank you for your message.'));
+}
+
+// open the form tag with a dm_contact_form css class
+echo $form->open();
+
+// write name label, field and error message
+echo $form['name']->label()->field()->error();
+
+// same with email
+echo $form['email']->label()->field()->error();
+
+echo $form['body']->label('Your message')->field();
+
+// render captcha if enabled
+if($form->isCaptchaEnabled())
+{
+  echo $form['captcha']->label('Captcha', 'for=false')->field()->error();
+}
+
+echo $form->renderHiddenFields();
+
+// change the submit button text
+echo £('div.submit_wrap', $form->submit('Send'));
+
+// close the form tag
+echo $form->close();  
\ No newline at end of file


Property changes on: 
plugins/dmContactPlugin/modules/dmContact/templates/_form.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/modules/dmContactAdmin/actions/actions.class.php
===================================================================
--- plugins/dmContactPlugin/modules/dmContactAdmin/actions/actions.class.php    
                        (rev 0)
+++ plugins/dmContactPlugin/modules/dmContactAdmin/actions/actions.class.php    
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,16 @@
+<?php
+
+require_once 
dirname(__FILE__).'/../lib/dmContactAdminGeneratorConfiguration.class.php';
+require_once 
dirname(__FILE__).'/../lib/dmContactAdminGeneratorHelper.class.php';
+
+/**
+ * dmContactAdmin actions.
+ *
+ * @package    retest
+ * @subpackage dmContactAdmin
+ * @author     Your name here
+ * @version    SVN: $Id: actions.class.php 12474 2008-10-31 10:41:27Z fabien $
+ */
+class dmContactAdminActions extends autoDmContactAdminActions
+{
+}


Property changes on: 
plugins/dmContactPlugin/modules/dmContactAdmin/actions/actions.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/modules/dmContactAdmin/config/generator.yml
===================================================================
--- plugins/dmContactPlugin/modules/dmContactAdmin/config/generator.yml         
                (rev 0)
+++ plugins/dmContactPlugin/modules/dmContactAdmin/config/generator.yml 
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,40 @@
+generator:
+  class: dmAdminDoctrineGenerator
+  param:
+    model_class: DmContact
+    theme: dmAdmin
+    non_verbose_templates: true
+    with_show: false
+    route_prefix: dm_contact
+    with_doctrine_route: false
+    config:
+      actions: ~
+      fields: {  }
+      list:
+        display:
+          - '=name'
+          - email
+          - body
+          - created_at
+          - updated_at
+        sort:
+          - created_at
+          - desc
+        table_method: getAdminListQuery
+        table_count_method: ~
+      filter:
+        display:
+          - name
+          - email
+          - body
+          - created_at
+          - updated_at
+      form:
+        display:
+          NONE: [name, email]
+          Body: [body]
+        class: DmContactAdminForm
+        fields: {  }
+      edit: ~
+      new: ~
+    sortable: false


Property changes on: 
plugins/dmContactPlugin/modules/dmContactAdmin/config/generator.yml
___________________________________________________________________
Added: svn:executable
   + *

Added: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminExport.class.php
===================================================================
--- 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminExport.class.php
                           (rev 0)
+++ 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminExport.class.php
   2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * dmContactAdmin admin export
+ *
+ * @package    retest
+ * @subpackage dmContactAdmin
+ * @author     Your name here
+ */
+class DmContactAdminExport extends myDoctrineTableExport
+{
+}


Property changes on: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminExport.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminForm.php
===================================================================
--- plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminForm.php   
                        (rev 0)
+++ plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminForm.php   
2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * dmContactAdmin admin form
+ *
+ * @package    retest
+ * @subpackage dmContactAdmin
+ * @author     Your name here
+ */
+class DmContactAdminForm extends BaseDmContactForm
+{
+  public function configure()
+  {
+    parent::configure();
+  }
+}
\ No newline at end of file


Property changes on: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/DmContactAdminForm.php
___________________________________________________________________
Added: svn:executable
   + *

Added: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorConfiguration.class.php
===================================================================
--- 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorConfiguration.class.php
                           (rev 0)
+++ 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorConfiguration.class.php
   2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * dmContactAdmin module configuration.
+ *
+ * @package    retest
+ * @subpackage dmContactAdmin
+ * @author     Your name here
+ * @version    SVN: $Id: configuration.php 12474 2008-10-31 10:41:27Z fabien $
+ */
+class dmContactAdminGeneratorConfiguration extends 
BaseDmContactAdminGeneratorConfiguration
+{
+}


Property changes on: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorConfiguration.class.php
___________________________________________________________________
Added: svn:executable
   + *

Added: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorHelper.class.php
===================================================================
--- 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorHelper.class.php
                          (rev 0)
+++ 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorHelper.class.php
  2010-01-25 01:21:14 UTC (rev 27152)
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * dmContactAdmin module helper.
+ *
+ * @package    retest
+ * @subpackage dmContactAdmin
+ * @author     Your name here
+ * @version    SVN: $Id: helper.php 12474 2008-10-31 10:41:27Z fabien $
+ */
+class dmContactAdminGeneratorHelper extends BaseDmContactAdminGeneratorHelper
+{
+}


Property changes on: 
plugins/dmContactPlugin/modules/dmContactAdmin/lib/dmContactAdminGeneratorHelper.class.php
___________________________________________________________________
Added: svn:executable
   + *

-- 
You received this message because you are subscribed to the Google Groups 
"symfony SVN" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/symfony-svn?hl=en.

Reply via email to