fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [16764] Stable: Merge 16762:16763 from trunk


From: sigurdne
Subject: [Fmsystem-commits] [16764] Stable: Merge 16762:16763 from trunk
Date: Sun, 21 May 2017 14:00:29 -0400 (EDT)

Revision: 16764
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=16764
Author:   sigurdne
Date:     2017-05-21 14:00:29 -0400 (Sun, 21 May 2017)
Log Message:
-----------
Stable: Merge 16762:16763 from trunk

Modified Paths:
--------------
    branches/Version-2_0-branch/eventplanner/inc/class.bobooking.inc.php
    branches/Version-2_0-branch/eventplanner/setup/phpgw_no.lang
    branches/Version-2_0-branch/eventplanner/templates/base/config.tpl

Property Changed:
----------------
    branches/Version-2_0-branch/

Index: branches/Version-2_0-branch
===================================================================
--- branches/Version-2_0-branch 2017-05-21 17:58:40 UTC (rev 16763)
+++ branches/Version-2_0-branch 2017-05-21 18:00:29 UTC (rev 16764)

Property changes on: branches/Version-2_0-branch
___________________________________________________________________
Modified: svn:mergeinfo
## -1,4 +1,4 ##
 /branches/dev-syncromind:13653
 /branches/dev-syncromind-2:14933-16738
 /branches/stavangerkommune:12743-12875,12986
-/trunk:14721-14732,14734-14735,14737,14739,14741,14743-14744,14746-14749,14751,14753,14755-14757,14759,14761-14764,14766-14768,14770-14783,14785-14792,14794-14813,14815-14816,14818,14820-14822,14824-14825,14827-14829,14831-14834,14836,14838,14840-14842,14844-14845,14847,14849-14866,14868-14869,14871,14873-14875,14877-14878,14880-14884,14886-14896,14898,14900-14902,14904,14906-14909,14911-14915,14917-14919,14921-14922,14924-14978,14980-15258,15260-15261,15263-15264,15266-15285,15287-15288,15290-15291,15293,15295,15297,15299-15305,15307-15310,15312-15335,15337-15352,15354,15356,15358,15360-15541,15543-15566,15568-15569,15571,15573-15581,15583,15585-15617,15619,15621-15630,15632-15635,15637-15639,15641-15643,15645,15647-15665,15667-15668,15670-15671,15673-15693,15695-15712,15714-15764,15766-15767,15769-15787,15789-15802,15804-15811,15813-15814,15816-15818,15820-15849,15851-15887,15889-15900,15902-16046,16048-16051,16053,16055,16057-16063,16065-16071,16073-16077,16079-16081,16083-16099,16101-16130,16132-16140,16142,16144-16212,16214-16219,16221,16223-16224,16226,16228-16229,16231,16233,16235,16237,16239-16240,16242,16244-16246,16248,16250-16251,16253-16255,16257-16259,16261,16263,16265,16267,16269-16276,16278,16280-16283,16285,16287-16288,16290,16292-16295,16297-16305,16307-16314,16316-16318,16320-16322,16324,16326-16330,16332,16334,16336,16338-16339,16341-16342,16344,16346,16348,16350,16352-16353,16355-16358,16360,16362,16364-16369,16371,16373,16375-16378,16380,16382-16383,16385,16387,16389,16391,16393-16395,16397,16399-16402,16404,16406,16408,16410-16415,16417,16419-16420,16422-16425,16427,16429-16440,16442,16444,16446,16448-16449,16451,16453,16455-16463,16465-16472,16474-16475,16477-16484,16486,16488,16490-16497,16499,16501-16503,16505-16512,16514-16517,16519,16521,16523,16525,16527-16532,16534,16536-16541,16543,16545-16554,16556,16558-16565,16567-16575,16577-16584,16586-16588,16590,16592-16593,16595-16596,16598,16600-16601,16603-16608,16610-16614,16616-16618,16620-16621,16623-16624,16626,16628,16630,16632-16638,16640,16642,16644,16646-16651,16653-16663,16665,16667,16669,16671,16673,16675,16677,16679-16680,16682,16684,16686,16688-16692,16694-16695,16697-16699,16701,16703,16705-16706,16708,16710,16712,16714,16716-16718,16720-16728,16730-16732,16734-16739,16741,16743-16746,16748-16750,16752-16755,16757,16759-16761
\ No newline at end of property
+/trunk:14721-14732,14734-14735,14737,14739,14741,14743-14744,14746-14749,14751,14753,14755-14757,14759,14761-14764,14766-14768,14770-14783,14785-14792,14794-14813,14815-14816,14818,14820-14822,14824-14825,14827-14829,14831-14834,14836,14838,14840-14842,14844-14845,14847,14849-14866,14868-14869,14871,14873-14875,14877-14878,14880-14884,14886-14896,14898,14900-14902,14904,14906-14909,14911-14915,14917-14919,14921-14922,14924-14978,14980-15258,15260-15261,15263-15264,15266-15285,15287-15288,15290-15291,15293,15295,15297,15299-15305,15307-15310,15312-15335,15337-15352,15354,15356,15358,15360-15541,15543-15566,15568-15569,15571,15573-15581,15583,15585-15617,15619,15621-15630,15632-15635,15637-15639,15641-15643,15645,15647-15665,15667-15668,15670-15671,15673-15693,15695-15712,15714-15764,15766-15767,15769-15787,15789-15802,15804-15811,15813-15814,15816-15818,15820-15849,15851-15887,15889-15900,15902-16046,16048-16051,16053,16055,16057-16063,16065-16071,16073-16077,16079-16081,16083-16099,16101-16130,16132-16140,16142,16144-16212,16214-16219,16221,16223-16224,16226,16228-16229,16231,16233,16235,16237,16239-16240,16242,16244-16246,16248,16250-16251,16253-16255,16257-16259,16261,16263,16265,16267,16269-16276,16278,16280-16283,16285,16287-16288,16290,16292-16295,16297-16305,16307-16314,16316-16318,16320-16322,16324,16326-16330,16332,16334,16336,16338-16339,16341-16342,16344,16346,16348,16350,16352-16353,16355-16358,16360,16362,16364-16369,16371,16373,16375-16378,16380,16382-16383,16385,16387,16389,16391,16393-16395,16397,16399-16402,16404,16406,16408,16410-16415,16417,16419-16420,16422-16425,16427,16429-16440,16442,16444,16446,16448-16449,16451,16453,16455-16463,16465-16472,16474-16475,16477-16484,16486,16488,16490-16497,16499,16501-16503,16505-16512,16514-16517,16519,16521,16523,16525,16527-16532,16534,16536-16541,16543,16545-16554,16556,16558-16565,16567-16575,16577-16584,16586-16588,16590,16592-16593,16595-16596,16598,16600-16601,16603-16608,16610-16614,16616-16618,16620-16621,16623-16624,16626,16628,16630,16632-16638,16640,16642,16644,16646-16651,16653-16663,16665,16667,16669,16671,16673,16675,16677,16679-16680,16682,16684,16686,16688-16692,16694-16695,16697-16699,16701,16703,16705-16706,16708,16710,16712,16714,16716-16718,16720-16728,16730-16732,16734-16739,16741,16743-16746,16748-16750,16752-16755,16757,16759-16761,16763
\ No newline at end of property
Modified: branches/Version-2_0-branch/eventplanner/inc/class.bobooking.inc.php
===================================================================
--- branches/Version-2_0-branch/eventplanner/inc/class.bobooking.inc.php        
2017-05-21 17:58:40 UTC (rev 16763)
+++ branches/Version-2_0-branch/eventplanner/inc/class.bobooking.inc.php        
2017-05-21 18:00:29 UTC (rev 16764)
@@ -10,20 +10,19 @@
         * @subpackage booking
         * @version $Id:$
         */
-
        /*
-          This program is free software: you can redistribute it and/or modify
-          it under the terms of the GNU General Public License as published by
-          the Free Software Foundation, either version 2 of the License, or
-          (at your option) any later version.
+         This program is free software: you can redistribute it and/or modify
+         it under the terms of the GNU General Public License as published by
+         the Free Software Foundation, either version 2 of the License, or
+         (at your option) any later version.
 
-          This program is distributed in the hope that it will be useful,
-          but WITHOUT ANY WARRANTY; without even the implied warranty of
-          MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-          GNU Lesser General Public License for more details.
+         This program is distributed in the hope that it will be useful,
+         but WITHOUT ANY WARRANTY; without even the implied warranty of
+         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+         GNU Lesser General Public License for more details.
 
-          You should have received a copy of the GNU General Public License
-          along with this program.  If not, see <http://www.gnu.org/licenses/>.
+         You should have received a copy of the GNU General Public License
+         along with this program.  If not, see <http://www.gnu.org/licenses/>.
         */
 
        phpgw::import_class('phpgwapi.bocommon');
@@ -33,6 +32,7 @@
 
        class eventplanner_bobooking extends phpgwapi_bocommon
        {
+
                protected static
                        $bo,
                        $fields,
@@ -58,10 +58,10 @@
                        return self::$bo;
                }
 
-               public function store($object)
+               public function store( $object )
                {
                        $save_last_booking = false;
-                       if(!$object->get_id())
+                       if (!$object->get_id())
                        {
                                $save_last_booking = true;
                        }
@@ -68,9 +68,15 @@
 
                        $this->store_pre_commit($object);
                        $ret = 
eventplanner_sobooking::get_instance()->store($object);
-                       if($ret && $save_last_booking)
+                       if ($ret && $save_last_booking)
                        {
                                phpgwapi_cache::system_set('eventplanner', 
"last_booking{$object->customer_id}", time());
+
+
+                               /**
+                                * Send email receipt...
+                                */
+                               $this->send_email($object);
                        }
 
                        $this->store_post_commit($object);
@@ -77,10 +83,202 @@
                        return $ret;
                }
 
-               public function read($params)
+               public function send_email( $booking )
                {
+                       if 
(empty($GLOBALS['phpgw_info']['server']['smtp_server']))
+                       {
+                               phpgwapi_cache::message_set(lang('SMTP server 
is not set! (admin section)'), 'error');
+                               return false;
+                       }
+
+                       $config = CreateObject('phpgwapi.config', 
'eventplanner')->read();
+//                     _debug_array($booking);
+
+                       $customer_contact_name = 
$booking->customer_contact_name;
+                       $customer_contact_email = 
$booking->customer_contact_email;
+                       $customer_contact_phone = 
$booking->customer_contact_phone;
+                       $location = $booking->location;
+
+                       $from_ = 
$GLOBALS['phpgw']->common->show_date($booking->from_);
+                       $to_ = 
$GLOBALS['phpgw']->common->show_date($booking->to_);
+
+
+                       $calendar_id = $booking->calendar_id;
+                       $calendar = 
createObject('eventplanner.bocalendar')->read_single($calendar_id, true, 
$relaxe_acl = true);
+                       $application = 
createObject('eventplanner.boapplication')->read_single($calendar->application_id,
 true, $relaxe_acl = true);
+//                     _debug_array($application);
+
+
+                       $vendor_contact_name = $application->contact_name;
+                       $vendor_contact_email = $application->contact_email;
+                       $vendor_contact_phone = $application->contact_phone;
+                       $vendor_receipt_text = 
!empty($config['vendor_receipt_text']) ? $config['vendor_receipt_text'] : null;
+                       $customer_receipt_text = 
!empty($config['customer_receipt_text']) ? $config['customer_receipt_text'] : 
null;
+
+                       $event_title = $application->title;
+
+                       $subject = $event_title;
+
+                       $send = CreateObject('phpgwapi.send');
+
+                       $lang_when = lang('when');
+                       $lang_where = lang('where');
+
+                       $body  = <<<HTML
+                               <h2>{$event_title}</h2>
+                               <table>
+                                       <tr>
+                                               <td>
+                                                       {$lang_when}:
+                                               </td>
+                                               <td>
+                                                       {$from_} - {$to_}
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                                       {$lang_where}:
+                                               </td>
+                                               <td>
+                                                       {$location}
+                                               </td>
+                                       </tr>
+                               </table>
+HTML;
+
+                       $lang_vendor = lang('vendor');
+                       $lang_customer = lang('customer');
+                       $lang_contact_info = lang('contact info');
+
+                       $body .= <<<HTML
+                       <table border='1' class='pure-table pure-table-bordered 
pure-table-striped'>
+                               <thead>
+                                       <tr>
+                                               <th colspan="2" align = "left">
+                                                       {$lang_contact_info}
+                                               </th>
+                                       </tr>
+                               </thead>
+                               <tbody>
+                                       <tr>
+                                               <td>
+                                                       <b>{$lang_vendor}</b>
+                                               </td>
+                                               <td>
+                                                       {$vendor_contact_name}
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                               </td>
+                                               <td>
+                                                       {$vendor_contact_email}
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                               </td>
+                                               <td>
+                                                       {$vendor_contact_phone}
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                               </td>
+                                               <td>
+
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                                       <b>{$lang_customer}</b>
+                                               </td>
+                                               <td>
+                                                       {$customer_contact_name}
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                               </td>
+                                               <td>
+                                                       
{$customer_contact_email}
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td>
+                                               </td>
+                                               <td>
+                                                       
{$customer_contact_phone}
+                                               </td>
+                                       </tr>
+
+                               </tbody>
+                       </table>
+HTML;
+
+
+                       $vendor_receipt_text = 
!empty($config['vendor_receipt_text']) ? $config['vendor_receipt_text'] : null;
+
+                       if($vendor_receipt_text)
+                       {
+
+                               $lang_vendor_note = lang('vendor note');
+                               $body .= <<<HTML
+                               <h4>{$lang_vendor_note}</h4>
+                               <pre>{$vendor_receipt_text}</pre>
+HTML;
+
+                       }
+                       $customer_receipt_text = 
!empty($config['customer_receipt_text']) ? $config['customer_receipt_text'] : 
null;
+
+                       if($customer_receipt_text)
+                       {
+
+                               $lang_customer_note = lang('customer note');
+                               $body .= <<<HTML
+                               <h4>{$lang_customer_note}</h4>
+                               <pre>{$customer_receipt_text}</pre>
+HTML;
+
+                       }
+
+                       $content = <<<HTML
+<!DOCTYPE HTML>
+<html>
+       <head>
+               <meta charset="utf-8">
+       </head>
+       <body>
+               {$body}
+       </body>
+</html>
+HTML;
+
+                       /**
+                        * Vendor
+                        */
+                       $cc = $customer_contact_email;
+                       $bcc = '';
+                       $to_email = $vendor_contact_email;
+                       $from_email = $customer_contact_email;
+                       $from_name = $customer_contact_name;
+
+                       try
+                       {
+                               $rcpt = $send->msg('email', $to_email, 
$subject, stripslashes($content), '', $cc, $bcc, $from_email, $from_name, 
'html');
+                       }
+                       catch (phpmailerException $e)
+                       {
+                               phpgwapi_cache::message_set($e->getMessage(), 
'error');
+                       }
+
+                       return$rcpt;
+               }
+
+               public function read( $params )
+               {
                        $status_text = array(lang('inactive'), lang('active'));
-                       if(empty($params['filters']['active']))
+                       if (empty($params['filters']['active']))
                        {
                                $params['filters']['active'] = 1;
                        }
@@ -88,7 +286,7 @@
                        {
                                unset($params['filters']['active']);
                        }
-                       $values =  
eventplanner_sobooking::get_instance()->read($params);
+                       $values = 
eventplanner_sobooking::get_instance()->read($params);
                        $dateformat = 
$GLOBALS['phpgw_info']['user']['preferences']['common']['dateformat'];
                        foreach ($values['results'] as &$entry)
                        {
@@ -101,7 +299,7 @@
                        return $values;
                }
 
-               public function read_single($id, $return_object = true)
+               public function read_single( $id, $return_object = true )
                {
                        if ($id)
                        {
@@ -119,77 +317,4 @@
                {
                        return 
eventplanner_sobooking::get_instance()->get_booking_id_from_calendar($calendar_id);
                }
-
-/*             public function update_active_status( $ids, $action )
-               {
-                       if($action == 'enable' && $ids)
-                       {
-                               $_ids = array();
-                               $application_id = 
eventplanner_sobooking::get_instance()->read_single($ids[0], 
true)->application_id;
-
-                               $application = 
createObject('eventplanner.boapplication')->read_single($application_id);
-                               $params = array();
-                               $params['filters']['active'] = 1;
-                               $params['filters']['application_id'] = 
$application_id;
-
-                               $bookings =  
eventplanner_sobooking::get_instance()->read($params);
-
-                               $existing_booking_ids = array();
-                               foreach ($bookings['results'] as $booking)
-                               {
-                                       $existing_booking_ids[] = 
$booking['id'];
-                               }
-
-                               $number_of_active = 
(int)$bookings['total_records'];
-                               $limit = (int)$application->num_granted_events;
-
-                               $error = false;
-                               foreach ($ids as $id)
-                               {
-                                       if(in_array($id, $existing_booking_ids) 
)
-                                       {
-                                               continue;
-                                       }
-                                       if($limit > $number_of_active)
-                                       {
-                                               $_ids[] = $id;
-                                               $number_of_active ++;
-                                       }
-                                       else
-                                       {
-                                               $error = true;
-                                               $message = lang('maximum of 
granted events are reached');
-                                               
phpgwapi_cache::message_set($message, 'error');
-                                               break;
-                                       }
-                               }
-                               if($ids && !$_ids && !$error)
-                               {
-                                       return true;
-                               }
-                       }
-                       else if ($action == 'delete' && $ids)
-                       {
-                               foreach ($ids as $id)
-                               {
-                                       $booking = 
eventplanner_sobooking::get_instance()->read_single($id, true);
-                                       if(!$booking->customer_id)
-                                       {
-                                               $_ids[] = $id;
-                                       }
-                                       else
-                                       {
-                                               $message = lang('can not delete 
booking with customer');
-                                               
phpgwapi_cache::message_set($message, 'error');
-                                       }
-                               }               
-                       }
-                       else
-                       {
-                               $_ids = $ids;
-                       }
-
-                       return 
eventplanner_sobooking::get_instance()->update_active_status($_ids, $action);
-               }
-*/
        }
\ No newline at end of file

Modified: branches/Version-2_0-branch/eventplanner/setup/phpgw_no.lang
===================================================================
--- branches/Version-2_0-branch/eventplanner/setup/phpgw_no.lang        
2017-05-21 17:58:40 UTC (rev 16763)
+++ branches/Version-2_0-branch/eventplanner/setup/phpgw_no.lang        
2017-05-21 18:00:29 UTC (rev 16764)
@@ -124,4 +124,11 @@
 summary        eventplanner    no      kortversjon programbeskrivelse
 organization number already exists for %1      eventplanner    no      
Organisasjonsnummeret er allerede registrert på %1.
 you need to log in to access this page.        eventplanner    no      Du må 
logge deg på for å få tilgang til denne siden.
-do you represent the owner of this entry?      eventplanner    no      
Representerer du eieren av denne posten?
\ No newline at end of file
+do you represent the owner of this entry?      eventplanner    no      
Representerer du eieren av denne posten?
+contact info   eventplanner    no      Kontaktinformasjon
+vendor note    eventplanner    no      Generelt for utøver
+customer note  eventplanner    no      Generelt for Mottakersted
+when   eventplanner    no      Når
+where  eventplanner    no      Hvor
+vendor receipt text    eventplanner    no      utøvernotat ved kvittering
+customer receipt text  eventplanner    no      Mottakerstednotat ved kvittering
\ No newline at end of file

Modified: branches/Version-2_0-branch/eventplanner/templates/base/config.tpl
===================================================================
--- branches/Version-2_0-branch/eventplanner/templates/base/config.tpl  
2017-05-21 17:58:40 UTC (rev 16763)
+++ branches/Version-2_0-branch/eventplanner/templates/base/config.tpl  
2017-05-21 18:00:29 UTC (rev 16764)
@@ -20,6 +20,18 @@
                                <input type="number" 
name="newsettings[booking_interval]" value="{value_booking_interval}">
                        </td>
                </tr>
+               <tr>
+                       <td>{lang_vendor_receipt_text}:</td>
+                       <td>
+                               <textarea  
name="newsettings[vendor_receipt_text]">{value_vendor_receipt_text}</textarea>
+                       </td>
+               </tr>
+               <tr>
+                       <td>{lang_customer_receipt_text}:</td>
+                       <td>
+                               <textarea  
name="newsettings[customer_receipt_text]">{value_customer_receipt_text}</textarea>
+                       </td>
+               </tr>
 
                <!-- END body -->
                <!-- BEGIN footer -->




reply via email to

[Prev in Thread] Current Thread [Next in Thread]