more RT integration / reskin / 2.1, RT#6640
authorivan <ivan>
Sat, 20 Mar 2010 22:14:02 +0000 (22:14 +0000)
committerivan <ivan>
Sat, 20 Mar 2010 22:14:02 +0000 (22:14 +0000)
17 files changed:
httemplate/elements/calendar-win2k-2.css
httemplate/elements/freeside-menu.css
httemplate/elements/freeside.css
httemplate/elements/header.html
httemplate/elements/menu.html
httemplate/elements/xmenu.top.css
httemplate/elements/xmenu.top.js
httemplate/images/arrow.down.black.png [new file with mode: 0644]
httemplate/images/black-gradient.png [deleted file]
httemplate/images/black-gray-gradient.png [deleted file]
rt/FREESIDE_MODIFIED
rt/share/html/Elements/Footer
rt/share/html/Elements/PageLayout
rt/share/html/Elements/SelectDate
rt/share/html/NoAuth/css/freeside2.1/layout.css
rt/share/html/Prefs/SearchOptions.html
rt/share/html/User/Prefs.html

index 6f37b7d..7b8de00 100644 (file)
@@ -12,6 +12,7 @@
   cursor: default;
   background: #d4c8d0;
   font-family: tahoma,verdana,sans-serif;
+  z-index:2;
 }
 
 .calendar table {
index 8bdec31..165f7f4 100644 (file)
@@ -1,66 +1,70 @@
 input.fsblackbutton {
-        background-color:#333333;
-        color: #ffffff;
-        border:1px solid;
-        border-top-color:#cccccc;
-        border-left-color:#cccccc;
-        border-right-color:#aaaaaa;
-        border-bottom-color:#aaaaaa;
+        background-color:#aaaaaa;
+        color: #333333;
+        border:1px solid #cccccc;
+
+        -moz-border-radius: 8px;
+        -webkit-border-radius: 8px;
+        border-radius: 8px;
+
          font-family: Arial, Verdana, Helvetica, sans-serif;
         font-weight:bold;
         padding-left:12px;
         padding-right:12px;
          padding-top:0px;
          padding-bottom:0px;
-         margin-left:0px;
-         margin-right:0px;
-         margin-top:2px;
-         margin-bottom:0px;
+
+         margin-bottom:4px;
         overflow:visible;
-        filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff333333',EndColorStr='#ff666666')
+}
+
+input.fsblackbutton:hover,input.fsblackbutton:focus,
+input.fsblackbuttonselected:hover, input.fsblackbuttonselected:focus {
+        background:#aaaaaa;
 }
 
 input.fsblackbuttonselected {
-        background-color:#7e0079;
-        color: #ffffff;
-        border:1px solid;
-        border-top-color:#cccccc;
-        border-left-color:#cccccc;
-        border-right-color:#aaaaaa;
-        border-bottom-color:#aaaaaa;
+        background-color:#aaaaaa;
+        color: #7e0079;
+        border:1px solid #7e0079;
+
+        -moz-border-radius: 8px;
+        -webkit-border-radius: 8px;
+        border-radius: 8px;
+
          font-family: Arial, Verdana, Helvetica, sans-serif;
         font-weight:bold;
         padding-left:12px;
         padding-right:12px;
          padding-top:0px;
          padding-bottom:0px;
-         margin-left:0px;
-         margin-right:0px;
-         margin-top:2px;
-         margin-bottom:0px;
+
+         margin-bottom:4px;
         overflow:visible;
-        filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff330033',EndColorStr='#ff7e0079')
 }
 
 input.fstext {
-         border: 2px inset #eee;
-        /*border-top-color:#aaaaaa;
-        border-left-color:#aaaaaa;
-        border-right-color:#cccccc;
-        border-bottom-color:#cccccc;
-         */
+         border: 1px solid #666666;
+         padding: 1px;
+
          vertical-align:bottom;
          text-align:right;
          font-family: Arial,Verdana,Helvetica,sans-serif;
          font-size: 13px;
-         padding-left: 0px;
-         padding-right: 0px;
-         padding-top: 0px;
-         padding-bottom: 0px;
-         margin-left:0px;
-         margin-right:0px;
-         margin-top:0px;
-         margin-bottom:1px;
+
+         margin:0px;
+}
+
+input.fstext:focus {
+         border: 1px solid #7e0079;
+}
+
+a.fslink {
+        text-decoration: underline;
+}
+
+a:hover.fslink {
+        color: #7e0079;
 }
 
 a.fsblackbutton {
@@ -79,7 +83,6 @@ a.fsblackbutton {
          font-size:16px;
          text-decoration:none;
          overflow:visible;
-         filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff333333',EndColorStr='#ff666666')
 }
 
 a.fsblackbuttonselected,
@@ -100,7 +103,6 @@ a:visited:hover.fsblackbutton {
          font-size:16px;
          text-decoration:none;
          overflow:visible;
-         filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff330033',EndColorStr='#ff7e0079')
 }
 
 a.fsdarkbutton {
@@ -119,7 +121,6 @@ a.fsdarkbutton {
          font-size:16px;
          text-decoration:none;
          overflow:visible;
-         filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff555555',EndColorStr='#ff666666')
 }
 
 a.fsdarkbuttonselected,
@@ -140,6 +141,5 @@ a:visited:hover.fsdarkbutton {
          font-size:16px;
          text-decoration:none;
          overflow:visible;
-         filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff330033',EndColorStr='#ff7e0079')
 }
 
index c310e2f..73434f3 100644 (file)
@@ -10,7 +10,21 @@ a:link, a:visited {
   /* text-decoration: none; */
   color: #000000;
 } 
-/* a:hover {  text-decoration: underline } */
+
+a:hover {
+  text-decoration: underline;
+  color: #7e0079;
+}
+
+textarea, input {
+  border: 1px solid #666666;
+  padding: 1px;
+}
+
+textarea:focus, input:focus {
+  background-color: #ffffdd;
+  border: 1px solid #7e0079;
+}
 
 /* a:focus { background-color: #ccccee } */
 
index 08de3b6..1121160 100644 (file)
@@ -84,7 +84,7 @@ Example:
         <td align=left BGCOLOR="#ffffff"> <!-- valign="top" -->
           <font size=6><% $company_name || 'ExampleCo' %></font>
         </td>
-        <td align=right valign=top BGCOLOR="#ffffff"><FONT SIZE="-1">Logged in as <b><% getotaker %>&nbsp;</b> <FONT SIZE="-2">[ <a href="javascript:void(0);" onClick="logout();">logout</a> ]</FONT><br></FONT><FONT SIZE="-2"><a href="<%$fsurl%>pref/pref.html" STYLE="color: #000000">Preferences</a>
+        <td align=right valign=top BGCOLOR="#ffffff"><FONT SIZE="-1">Logged in as <b><% getotaker %>&nbsp;</b> <FONT SIZE="-2"><a href="javascript:void(0);" onClick="logout();">logout</a></FONT><br></FONT><FONT SIZE="-2"><a href="<%$fsurl%>pref/pref.html" STYLE="color: #000000">Preferences</a>
 %         if ( $conf->config("ticket_system")
 %              && FS::TicketSystem->access_right(\%session, 'ModifySelf') ) {
             | <a href="<%$fsurl%>rt/Prefs/Other.html" STYLE="color: #000000">Ticketing preferences</a>
@@ -102,32 +102,12 @@ Example:
 
       <TR>
 
-        <TD COLSPAN="5" WIDTH="100%" STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
+        <TD COLSPAN="7" WIDTH="100%" STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
           <SCRIPT TYPE="text/javascript">
             document.write(myBar);
           </SCRIPT>
         </TD>
 
-
-        <TD COLSPAN="2" ALIGN="right" STYLE="padding:1px 8px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
-          <TABLE CELLSPACING=0 CELLPADDING=0 BGCOLOR="#cccccc" BORDER=0>
-            <TR>
-              <TD ALIGN="right" STYLE="padding-right:3px;padding-bottom:1px;border-right:1px solid #999999"><% include('/elements/about_freeside.html') |n %></TD>
-              <TD ALIGN="left" STYLE="padding-left:3px;padding-bottom:1px"><% include('/elements/about_rt.html') |n %></TD>
-            </TR>
-          </TABLE>
-        </TD>
-
-      </TR>
-
-      <TR>
-        <TD COLSPAN="7" WIDTH="100%" HEIGHT="2px" STYLE="padding:0" BGCOLOR="#cccccc">
-        </TD>
-      </TR>
-      
-      <TR>
-        <TD COLSPAN="7" WIDTH="100%" HEIGHT="4px" STYLE="padding:0" BGCOLOR="#cccccc">
-        </TD>
       </TR>
 
 % }
@@ -138,7 +118,7 @@ Example:
 % if ( $curuser->access_right('List prospects') ) {
           <FORM ACTION="<%$fsurl%>search/prospect_main.html" METHOD="GET" STYLE="margin:0">
             <INPUT NAME="search_prospect" TYPE="text" VALUE="<% $prospect_label |n %>" STYLE="width:155px" onFocus="clearhint_search_prospect(this);" onClick="clearhint_search_prospect(this);" CLASS="fstext"><BR>
-            <A HREF="<%$fsurl%>search/report_prospect_main.html" STYLE="color: #ffffff; font-size: 11px">Adv</A>
+            <A HREF="<%$fsurl%>search/report_prospect_main.html" CLASS="fslink" STYLE="font-size: 11px">Adv</A>
             <INPUT TYPE="submit" VALUE="Search prospects" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:11px;padding-left:1px;padding-right:1px"">
           </FORM>
 % }
@@ -148,7 +128,7 @@ Example:
 % if ( $curuser->access_right('List customers') ) {
           <FORM ACTION="<%$fsurl%>search/cust_main.cgi" METHOD="GET" STYLE="margin:0">
             <INPUT NAME="search_cust" TYPE="text" VALUE="<% $cust_label |n %>" STYLE="width:<%$cust_width%>px" onFocus="clearhint_search_cust(this);" onClick="clearhint_search_cust(this);" CLASS="fstext"><BR>
-            <A HREF="<%$fsurl%>search/report_cust_main.html" STYLE="color: #ffffff; font-size: 11px">Advanced</A>
+            <A HREF="<%$fsurl%>search/report_cust_main.html" CLASS="fslink" STYLE="font-size: 11px">Advanced</A>
             <INPUT TYPE="submit" VALUE="Search customers" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:11px">
           </FORM>
 % }
@@ -170,7 +150,7 @@ Example:
             <FORM ACTION="<%$fsurl%>search/cust_bill.html" METHOD="GET" STYLE="margin:0;display:inline">
               <INPUT NAME="invnum" TYPE="text" VALUE="<% $inv_label |n %>" STYLE="width:56px" onFocus="clearhint_search_invoice(this);" onClick="clearhint_search_invoice(this);" CLASS="fstext">
 %   if ( $curuser->access_right('List invoices') ) { 
-              <A HREF="<%$fsurl%>search/report_cust_bill.html" STYLE="color: #ffffff; font-size: 11px">Adv</A>\
+              <A HREF="<%$fsurl%>search/report_cust_bill.html" CLASS="fslink" STYLE="font-size: 11px">Adv</A>\
 %   } 
 <BR><INPUT TYPE="submit" VALUE="Search invoices" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:11px;padding-left:1px;padding-right:1px;margin-top:3px">
             </FORM>
@@ -191,7 +171,7 @@ Example:
 % if ( $conf->config("ticket_system") ) { 
           <FORM ACTION="<% FS::TicketSystem->baseurl %>index.html" METHOD="GET" STYLE="margin:0">
             <INPUT NAME="q" TYPE="text" VALUE="<% $ticketing_label |n %>" STYLE="width:223px" onFocus="clearhint_search_ticket(this);" onClick="clearhint_search_ticket(this);" CLASS="fstext"><BR>
-            <A HREF="<% FS::TicketSystem->baseurl %>Search/Build.html" STYLE="color: #ffffff; font-size:11px">Advanced</A>
+            <A HREF="<% FS::TicketSystem->baseurl %>Search/Build.html" CLASS="fslink" STYLE="font-size:11px">Advanced</A>
             <INPUT TYPE="submit" VALUE="Search tickets" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:11px">
           </FORM>
 % }
index a26624e..a4fcde6 100644 (file)
@@ -489,6 +489,26 @@ $config_menu{'Miscellaneous'} = [ \%config_misc, ''    ]
   if $curuser->access_right('Edit advertising sources')
   || $curuser->access_right('Edit global advertising sources');
 
+
+my $wiki = 'http://www.freeside.biz/mediawiki/index.php';
+my $doc_link = $conf->config('support-key')
+                 ? "$wiki/Supported:Documentation"
+                 : $curuser->access_right('Configuration')
+                   ? "$wiki/Freeside:1.9:Documentation"
+                   : "$wiki/Freeside:1.9:Documentation:User";
+
+eval "use RT;"
+  if $conf->config('ticket_system') eq 'RT_Internal';
+
+tie my %help_menu, 'Tie::IxHash', 'Billing documentation' => [ $doc_link, 'Freeside documentation' ];
+$help_menu{'Ticketing documentation'} = [ 'http://wiki.bestpractical.com/', 'Request Tracker Wiki' ]
+  if $conf->config('ticket_system') eq 'RT_Internal';
+$help_menu{'separator'} = '';
+$help_menu{"About Freeside v$FS::VERSION"} = [ 'XXXfinishme', 'doh!' ];
+$help_menu{"About RT v$RT::VERSION"} = [ 'http://www.bestpractical.com/rt', 'Request Tracker Homepage' ]
+  if $conf->config('ticket_system') eq 'RT_Internal';
+
+
 tie my %menu, 'Tie::IxHash',
   'Billing Main'   => [ $fsurl, 'Billing start page', ],
 ;
@@ -521,6 +541,8 @@ $menu{'Configuration'} = [ \%config_menu, 'Configuraiton and setup' ]
   || $curuser->access_right('Phone configuration')
   || $curuser->access_right('Edit advertising sources')
   || $curuser->access_right('Edit global advertising sources');
+$menu{'Help'} = [ \%help_menu, '' ];
+
 
 use vars qw($gmenunum);
 $gmenunum = 0;
index a545be0..eb4da64 100644 (file)
        padding:                        1px 5px 1px 5px;
 
        font-size:              16px;
+        /* font-weight: bold; */
 
-       /* color:                               black; */
-       color:                          white;
+       color:                          black;
+       /* color:                               white; */
        text-decoration:        none;
+       /* text-decoration:     underline; */
 
        /* IE5.0 Does not paint borders and padding on inline elements without a height/width */
        height:         expression(constExpression(ie50 ? "17px" : "auto"));
 
-         background-color:#333333;
+/*         background-color:#333333;
         border:1px solid;
         border-top-color:#cccccc;
         border-left-color:#cccccc;
         border-right-color:#aaaaaa;
         border-bottom-color:#aaaaaa;
+*/
+/*        -moz-border-radius: 15px;
+        -webkit-border-radius: 15px;
+        border-radius: 15px;
+        behavior: url(border-radius.htc);
+*/
+
+        border: 1px solid #cccccc;
 
          margin-right: 4px
 
 }
 
 .webfx-menu-bar a:link {
-       color: white;
+       /* color: white; */
+        color: black;
 }
 
 .webfx-menu-bar a:hover {
-       /* color:                       black; */
-       color:                  white;
+        color:                 black;
+       /*  color:                      white; */
        /* background:          rgb(120,172,255);        */
        /* background:          #BC79B8; */
-        background:            #7e0079;
+        /* background:         #7e0079; */
+        text-decoration: underline;
+        /* font-weight: bold; */
        /* border-left: 1px solid rgb(234,242,255);
        border-right:   1px solid rgb(0,66,174);
        border-top:             1px solid rgb(234,242,255);
        border-bottom:  1px solid rgb(0,66,174); */
 
-        border:1px solid;
+/*      border:1px solid;
         border-top-color:#cccccc;
         border-left-color:#cccccc;
         border-right-color:#aaaaaa;
         border-bottom-color:#aaaaaa;
+*/
+/*         -moz-border-radius: 8px;
+        -webkit-border-radius: 8px;
+        border-radius: 8px;
+        behavior: url(border-radius.htc);
+*/
+
+        /* border: 1px solid #7e0079; */
+/*        border: 1px solid #d8d8d8;
+        background: #bbbbbb;
+*/
+        color: #7e0079;
 
 }
 
index 8d81035..b9df515 100644 (file)
@@ -370,7 +370,7 @@ WebFXMenuButton.prototype.toString = function () {
                                )) +
                        ">" +
                        this.text + 
-                       (this.subMenu ? "<img class='arrow' src='" + webfxMenuImagePath + "arrow.down.png'>" : "") +                            
+                       (this.subMenu ? "<img class='arrow' src='" + webfxMenuImagePath + "arrow.down.black.png'>" : "") +                              
                        "</a>";
 };
 
diff --git a/httemplate/images/arrow.down.black.png b/httemplate/images/arrow.down.black.png
new file mode 100644 (file)
index 0000000..92a8b51
Binary files /dev/null and b/httemplate/images/arrow.down.black.png differ
diff --git a/httemplate/images/black-gradient.png b/httemplate/images/black-gradient.png
deleted file mode 100644 (file)
index 225732d..0000000
Binary files a/httemplate/images/black-gradient.png and /dev/null differ
diff --git a/httemplate/images/black-gray-gradient.png b/httemplate/images/black-gray-gradient.png
deleted file mode 100644 (file)
index f5c318f..0000000
Binary files a/httemplate/images/black-gray-gradient.png and /dev/null differ
index 676b012..ea38878 100644 (file)
@@ -18,13 +18,10 @@ lib/RT/URI/freeside/XMLRPC.pm
  share/html/Admin/Users/Modify.html
  share/html/Elements/Header
  share/html/Elements/PageLayout
- html/Elements/QuickCreate
- html/Elements/SelectDate
- html/Elements/SimpleSearch
- html/Elements/Tabs
- html/Elements/Footer
- html/Elements/CollectionAsTable/Row #backport from 3.3-TESTING
- html/Ticket/Create.html
+ #html/Elements/QuickCreate
+ share/html/Elements/SelectDate
+ share/html/Elements/Footer
+ html/Ticket/Create.html #XXX TODO
  share/html/Ticket/Display.html
 share/html/Ticket/Elements/AddCustomers
 share/html/Ticket/Elements/EditCustomers
@@ -41,10 +38,8 @@ share/html/NoAuth/css/freeside2.1/nav.css
 share/html/NoAuth/css/freeside2.1/base.css
 share/html/NoAuth/css/freeside2.1/layout.css
 
-html/Widgets/TitleBoxStart
-
 share/html/Elements/AddCustomers
 share/html/Elements/EditCustomers
 
- html/User/Prefs.html
- html/Prefs/SearchOptions.html
share/html/User/Prefs.html
share/html/Prefs/SearchOptions.html
index 2fcdee9..59547e2 100755 (executable)
 %# End of div#body from /Elements/PageLayout
 </div>
 % $m->callback( %ARGS );
-<div id="footer">
-% if ($m->{'rt_base_time'}) {
-  <p id="time">
-    <span><&|/l&>Time to display</&>: <%Time::HiRes::tv_interval( $m->{'rt_base_time'} )%></span>
-  </p>
-%}
-  <p id="bpscredits">
-    <span>
-<&|/l,     '&#187;&#124;&#171;', $RT::VERSION, '2009', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>', &>[_1] RT [_2] Copyright 1996-[_3] [_4].</&>
-</span>
-</p>
-% if (!$Menu) {
-  <p id="legal">
-<&|/l&>Distributed under version 2 <a href="http://www.gnu.org/copyleft/gpl.html"> of the GNU GPL.</a></&><br />
-<&|/l, '<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>' &>To inquire about support, training, custom development or licensing, please contact [_1].</&><br />
-  </p>
-% }
-
-</div>
 % if ($Debug >= 2 ) {
 % require Data::Dumper;
 % my $d = Data::Dumper->new([\%ARGS], [qw(%ARGS)]);
index b5800ce..f30d815 100755 (executable)
@@ -46,6 +46,8 @@
 %# 
 %# END BPS TAGGED BLOCK }}}
 
+<% include('/elements/init_calendar.html') |n %>
+
 % if (0) { ## new ticket via customer, and we already have a ticket search box
 <div id="topactions">
 % foreach my $action (reverse sort keys %{$topactions}) {
index 32a173d..183086f 100755 (executable)
 %# those contributions and any derivatives thereof.
 %# 
 %# END BPS TAGGED BLOCK }}}
-<script type="text/javascript"><!--
-    onLoadHook('createCalendarLink("<% $Name %>");');
---></script>
+%# in PageLayout instead, once <% include('/elements/init_calendar.html') |n %>
 <input type="text" id="<% $Name %>" name="<% $Name %>" value="<% $Value %>" size="<% $Size %>" />
+<IMG SRC="<%$fsurl%>images/calendar.png" ID="<% $Name %>_date_button" STYLE="cursor: pointer" TITLE="Select date">
+<script type="text/javascript">
+Calendar.setup({
+    inputField: "<%$Name%>",
+% if ( defined($ShowTime) && $ShowTime ) {
+    ifFormat:   "%Y-%m-%d %H:%M",
+    showsTime:  true,
+% } else {
+    ifFormat:   "%Y-%m-%d",
+% }
+    button:     "<%$Name%>_date_button",
+});
+</script>
 <%init>
 unless ((defined $Default) or 
        ($current <= 0)) {
index b7b87ab..0e7912d 100644 (file)
@@ -53,7 +53,8 @@ body {
     padding:0;
     margin:0;
 
-    background: #547CCC url(<%RT->Config->Get('WebPath')%>/NoAuth/css/freeside2.1/images/background-gradient.png) top left repeat-x ;
+    /*background: #547CCC url(<%RT->Config->Get('WebPath')%>/NoAuth/css/freeside2.1/images/background-gradient.png) top left repeat-x ; */
+    background: #f8f8f8;
     font-family: arial, helvetica, sans-serif;
 
     color: #000000;
index e40265f..5e5ed46 100644 (file)
@@ -45,7 +45,7 @@
 %# those contributions and any derivatives thereof.
 %# 
 %# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Search Preferences") &>
+<& /Elements/Header, Title => loc("Ticketing Search Preferences") &>
 <& /User/Elements/Tabs, 
     current_tab => "Prefs/SearchOptions.html",
     Title => loc("Search Preferences")
index f52fdcb..43c981d 100755 (executable)
@@ -45,7 +45,7 @@
 %# those contributions and any derivatives thereof.
 %# 
 %# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title=>loc("Preferences") &>
+<& /Elements/Header, Title=>loc("Ticketing Preferences") &>
 <& /User/Elements/Tabs, 
     current_tab => 'User/Prefs.html', 
     Title => loc("Preferences") &>