]> err.no Git - scalable-opengroupware.org/commitdiff
added experimental mailer contacts module
authorhelge <helge@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Mon, 14 Feb 2005 16:23:41 +0000 (16:23 +0000)
committerhelge <helge@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Mon, 14 Feb 2005 16:23:41 +0000 (16:23 +0000)
git-svn-id: http://svn.opengroupware.org/SOGo/trunk@559 d1b88da0-ebda-0310-925b-ed51d893ca5b

SOGo/UI/GNUmakefile
SOGo/UI/MailerContacts/GNUmakefile [new file with mode: 0644]
SOGo/UI/MailerContacts/MailerContactsUIProduct.m [new file with mode: 0644]
SOGo/UI/MailerContacts/UIxMailContactList.m [new file with mode: 0644]
SOGo/UI/MailerContacts/UIxMailContactList.wox [new file with mode: 0644]
SOGo/UI/MailerContacts/Version [new file with mode: 0644]
SOGo/UI/MailerContacts/common.h [new file with mode: 0644]
SOGo/UI/MailerContacts/product.plist [new file with mode: 0644]

index ef666605bbf404843416a3db12e1330c92a1d9c6..c5afa11e55be54b8c7ce3bd2898962a41443d3c0 100644 (file)
@@ -1,8 +1,8 @@
-# $Id$
+# GNUstep makefile
 
 include $(GNUSTEP_MAKEFILES)/common.make
 
-SUBPROJECTS = \
+SUBPROJECTS += \
        SOGoUI          \
        Common          \
        Scheduler       \
@@ -10,4 +10,8 @@ SUBPROJECTS = \
        Mailer          \
        Anais           \
 
+# experimental
+SUBPROJECTS += \
+       MailerContacts
+
 include $(GNUSTEP_MAKEFILES)/aggregate.make
diff --git a/SOGo/UI/MailerContacts/GNUmakefile b/SOGo/UI/MailerContacts/GNUmakefile
new file mode 100644 (file)
index 0000000..cd41f03
--- /dev/null
@@ -0,0 +1,30 @@
+# GNUstep makefile
+
+include ../common.make
+
+BUNDLE_NAME = MailerContactsUI
+
+MailerContactsUI_PRINCIPAL_CLASS = MailerContactsUIProduct
+
+MailerContactsUI_LANGUAGES = English French
+
+MailerContactsUI_OBJC_FILES += \
+       MailerContactsUIProduct.m       \
+       \
+       UIxMailContactList.m
+
+MailerContactsUI_RESOURCE_FILES += \
+       Version                 \
+       product.plist           \
+
+MailerContactsUI_RESOURCE_FILES += \
+       UIxMailContactList.wox
+
+MailerContactsUI_LOCALIZED_RESOURCE_FILES +=
+
+# make
+
+-include GNUmakefile.preamble
+include $(GNUSTEP_MAKEFILES)/bundle.make
+-include GNUmakefile.postamble
+include ../../fhsbundle.make
diff --git a/SOGo/UI/MailerContacts/MailerContactsUIProduct.m b/SOGo/UI/MailerContacts/MailerContactsUIProduct.m
new file mode 100644 (file)
index 0000000..7385e79
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+  Copyright (C) 2005 SKYRIX Software AG
+
+  This file is part of OpenGroupware.org.
+
+  OGo is free software; you can redistribute it and/or modify it under
+  the terms of the GNU Lesser General Public License as published by the
+  Free Software Foundation; either version 2, or (at your option) any
+  later version.
+
+  OGo 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 Lesser General Public
+  License along with OGo; see the file COPYING.  If not, write to the
+  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+  02111-1307, USA.
+*/
+
+#import <Foundation/NSObject.h>
+
+@interface MailerContactsUIProduct : NSObject
+{
+}
+
+@end
+
+#include "common.h"
+
+@implementation MailerContactsUIProduct
+@end /* MailerContactsUIProduct */
diff --git a/SOGo/UI/MailerContacts/UIxMailContactList.m b/SOGo/UI/MailerContacts/UIxMailContactList.m
new file mode 100644 (file)
index 0000000..b0799e8
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+  Copyright (C) 2005 SKYRIX Software AG
+
+  This file is part of OpenGroupware.org.
+
+  OGo is free software; you can redistribute it and/or modify it under
+  the terms of the GNU Lesser General Public License as published by the
+  Free Software Foundation; either version 2, or (at your option) any
+  later version.
+
+  OGo 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 Lesser General Public
+  License along with OGo; see the file COPYING.  If not, write to the
+  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+  02111-1307, USA.
+*/
+
+#include <UI/Contacts/UIxContactsListView.h>
+
+@interface UIxMailContactList : UIxContactsListView
+{
+}
+
+@end
+
+#include "common.h"
+#include <SoObjects/Contacts/SOGoContactFolder.h>
+#include <SoObjects/Contacts/SOGoContactObject.h>
+
+@implementation UIxMailContactList
+
+@end /* UIxMailContactList */
diff --git a/SOGo/UI/MailerContacts/UIxMailContactList.wox b/SOGo/UI/MailerContacts/UIxMailContactList.wox
new file mode 100644 (file)
index 0000000..898cd19
--- /dev/null
@@ -0,0 +1,112 @@
+<?xml version='1.0' standalone='yes'?>
+<var:component
+  xmlns="http://www.w3.org/1999/xhtml"
+  xmlns:var="http://www.skyrix.com/od/binding"
+  xmlns:const="http://www.skyrix.com/od/constant"
+  xmlns:uix="OGo:uix"
+  xmlns:rsrc="OGo:url"
+  xmlns:label="OGo:label"
+  className="UIxMailMainFrame"
+  title="panelTitle"
+>
+<!--
+  TODO: had a form like this:
+       <form name="searchform" var:href="tb.view" var:_sort="sortKey"
+             method="GET">
+-->
+  <style> <!-- TODO: remove this style -->
+    table.contacttableview {
+      text-decoration:  none;
+      font-family:      Arial, Helvetica, Verdana, Geneva, Tahoma, sans-serif;
+      font-size:        9pt;
+      color:            #000000;
+    }
+    table.contacttableview th {
+      text-align: left;
+    }
+  </style>
+<!--
+  TODO: the new button previously had this:
+                            <a class="button_auto"
+                               href="new"
+                               var:queryDictionary="queryParameters"
+-->
+
+  <table class="titletable" cellspacing="0" cellpadding="0">
+    <tr>
+      <td class="titlecell">
+        <var:string label:value="Addressbook"/>
+      </td>
+      <td class="titlecell" style="width: 95%; padding-right: 1px;">
+        <input type="text" name="search" class="searchfield" 
+               var:value="searchText"
+               style="width: 100%;" />
+      </td>
+    </tr>
+  </table>
+
+  <div class="embedwhite_out">
+    <div class="embedwhite_in">
+
+                <table border="0" width="100%" class="contacttableview">
+                  <tr>
+                    <!-- localize -->
+                    <th>
+                      <var:if condition="sortKey" const:value="sn"
+                              const:negate="YES">
+                        <a href="tb.view"
+                           _sort="sn"
+                           var:_search="searchText"
+                        ><var:string label:value="Lastname" /></a>
+                      </var:if>
+                      <var:if condition="sortKey" const:value="sn">
+                        <i><var:string label:value="Lastname" /></i>
+                      </var:if>
+                    </th>
+                    <th>
+                      <var:if condition="sortKey" const:value="givenname"
+                              const:negate="YES">
+                        <a href="tb.view"
+                           _sort="givenname"
+                           var:_search="searchText"
+                        ><var:string label:value="Firstname" /></a>
+                      </var:if>
+                      <var:if condition="sortKey" const:value="givenname">
+                        <i><var:string label:value="Firstname" /></i>
+                      </var:if>
+                    </th>
+                    <th>
+                      <var:if condition="sortKey" const:value="mail"
+                              const:negate="YES">
+                        <a href="tb.view"
+                           _sort="mail"
+                           var:_search="searchText"
+                        ><var:string label:value="EMail" /></a>
+                      </var:if>
+                      <var:if condition="sortKey" const:value="mail">
+                        <i><var:string label:value="EMail" /></i>
+                      </var:if>
+                    </th>
+                    <th>
+                           <var:string label:value="Phone" />
+                    </th>
+                    <th>
+                           <var:string label:value="Location" />
+                    </th>
+                  </tr>
+                  <var:foreach list="contactInfos" item="contact">
+                    <tr>
+                      <td>
+                        <a var:href="contact.cName"
+                           ><var:string value="contact.sn" /></a>
+                      </td>
+                      <td><var:string value="contact.givenname"       /></td>
+                      <td><var:string value="contact.mail"            /></td>
+                      <td><var:string value="contact.telephonenumber" /></td>
+                      <td><var:string value="contact.l"               /></td>
+                    </tr>
+                  </var:foreach>
+                </table>
+    </div>
+  </div>
+</var:component>
diff --git a/SOGo/UI/MailerContacts/Version b/SOGo/UI/MailerContacts/Version
new file mode 100644 (file)
index 0000000..93f90d1
--- /dev/null
@@ -0,0 +1,3 @@
+# version file
+
+SUBMINOR_VERSION:=1
diff --git a/SOGo/UI/MailerContacts/common.h b/SOGo/UI/MailerContacts/common.h
new file mode 100644 (file)
index 0000000..801da9c
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+  Copyright (C) 2005 SKYRIX Software AG
+
+  This file is part of OpenGroupware.org.
+
+  OGo is free software; you can redistribute it and/or modify it under
+  the terms of the GNU Lesser General Public License as published by the
+  Free Software Foundation; either version 2, or (at your option) any
+  later version.
+
+  OGo 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 Lesser General Public
+  License along with OGo; see the file COPYING.  If not, write to the
+  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+  02111-1307, USA.
+*/
+
+#import <Foundation/Foundation.h>
+
+#if LIB_FOUNDATION_LIBRARY
+#  include <Foundation/exceptions/GeneralExceptions.h>
+#elif NeXT_Foundation_LIBRARY || COCOA_Foundation_LIBRARY
+#  include <NGExtensions/NGObjectMacros.h>
+#  include <NGExtensions/NSString+Ext.h>
+#endif
+
+#include <NGExtensions/NGExtensions.h>
+#include <NGObjWeb/NGObjWeb.h>
+#include <NGObjWeb/SoObjects.h>
diff --git a/SOGo/UI/MailerContacts/product.plist b/SOGo/UI/MailerContacts/product.plist
new file mode 100644 (file)
index 0000000..0fc923e
--- /dev/null
@@ -0,0 +1,38 @@
+{
+  requires = ( MAIN, CommonUI, Contacts, MailerUI, ContactsUI );
+
+  publicResources = (
+  );
+
+  factories = {
+  };
+
+  categories = {
+    SOGoContactFolder = {
+      slots = {
+        toolbar = {
+          protectedBy = "View";
+          value = ( /* the toolbar groups */
+            ( /* first group */
+              {
+                link  = "getMail";
+                cssClass = "tbicon_getmail"; label = "Get Mail";
+              },
+              {
+                link     = "new";
+                // onclick  = "clickedCompose(this);return false;";
+                cssClass = "tbicon_compose"; label = "New Contact";
+              },
+            ),
+          );
+        };
+      };
+      methods = {
+        "tb.view" = { /* primary entry for mailer actions */
+          protectedBy = "View";
+          pageName    = "UIxMailContactList"; 
+        };
+      };
+    };
+  };
+}