Upcoming Site...Looking for Comments
Sorry to say it but I feel IE on Mac is dead. People shouldn't use it. That's my feeling. Seems to be the same for MS as they haven't updated IE for Mac in years. I think I may have the same problem in IE Mac as I do for Opera Mac so when I have to to fix the CSS it may take care of both.paschulke wrote:menu works NOT on internet explorer for mac!
Re: Calendar Integration...
I'll post a step-by-step guide to what I did later tonight.marco wrote:Could you please explain this a bit more, what files are edited what replacement tag is used, and where is the code above inserted?
Here is a basic run down of how to include the ExtCalendar2 in phpwcms.
File that need to be modified:
calendar.php
cal_search.php
register.php
Files that you may optional modify:
admin_categories.php
admin_events.php
admin_groups.php
admin_settings.php
admin_settings_template.php
admin_settings_updates.php
admin_users.php
login.php
profile.php
Soft Links to phpwcms directories inside the calendar directory:
img
phpwcms_template
Note: I needed those soft links because of files that are called relatively in my design. You may not need these.
In each of the calendar .php files right after the beginning include or require directives add the following code:
This starts buffering the calendar output. The ExtCalendar2 has it's own header, calendar, and footer output functions. Also I made sure to set ExtCalendar2 to use a custom template that only contained the calendar itself without an HTML header and footer.
In any of the .php files after
add the following code:
This ends the buffering and does the replacement tag stuff. A couple of items that are coded into phpwcms are the following tags:
This is a replacement tag for the calendars css style sheet which I put in the template head section. I decided I only wanted it included when viewing the calendar and not have all that style sheet code loaded for any other pages when it's not needed there.
That replacement tag goes in the phpwcmw dummy template page. See and example here: http://www.lbym.org/calview.phtml
What happens is I have my Calendar category redirect to the /calendar/ directory. Also underneath the Calendar category I have a Calendar View category with an alias of calview, this makes available the calview.phtml page that ExtCalendar make use of as it's template.
This feels like a really complex way of integrating the ExtCalendar but it is rather simple once you have it working. Hope this is helpful.
File that need to be modified:
calendar.php
cal_search.php
register.php
Files that you may optional modify:
admin_categories.php
admin_events.php
admin_groups.php
admin_settings.php
admin_settings_template.php
admin_settings_updates.php
admin_users.php
login.php
profile.php
Soft Links to phpwcms directories inside the calendar directory:
img
phpwcms_template
Note: I needed those soft links because of files that are called relatively in my design. You may not need these.
In each of the calendar .php files right after the beginning include or require directives add the following code:
Code: Select all
// BEGIN phpWCMS template integration
ob_start();
// END phpWCMS template integration
In any of the .php files after
Code: Select all
// footer
pagefooter();
Code: Select all
// BEGIN phpWCMS template integration
$cmstmpl['calendar'] = ob_get_contents();
ob_end_clean();
$cmstmpl['all'] = @file_get_contents('http://www.lbym.org/calview.phtml');
$cmstmpl['all'] = preg_replace("/href\ *\=\ *\"/","href=\"/", $cmstmpl['all']);
$cmstmpl['all'] = str_replace('href="//', 'href="/', $cmstmpl['all']);
$cmstmpl['all'] = preg_replace("/href\ *\=\ *\'/","href='/", $cmstmpl['all']);
$cmstmpl['all'] = str_replace("href='//", "href='/", $cmstmpl['all']);
$cmstmpl['all'] = str_replace('href="/javascript:', 'href="javascript:', $cmstmpl['all']);
$cmstmpl['all'] = str_replace('href="/http:', 'href="http:', $cmstmpl['all']);
$cmstmpl['all'] = str_replace('<!-- EXTCAL_CSS -->', '<link rel="stylesheet" type="text/css" href="/phpwcms_template/inc_css/calendar.css">', $cmstmpl['all']);
$cmstmpl['all'] = str_replace('{EXTCAL}', $cmstmpl['calendar'], $cmstmpl['all']);
echo $cmstmpl['all'];
// END phpWCMS template integration
Code: Select all
<!-- EXTCAL_CSS -->
Code: Select all
{EXTCAL}
What happens is I have my Calendar category redirect to the /calendar/ directory. Also underneath the Calendar category I have a Calendar View category with an alias of calview, this makes available the calview.phtml page that ExtCalendar make use of as it's template.
This feels like a really complex way of integrating the ExtCalendar but it is rather simple once you have it working. Hope this is helpful.
@visioneer
this is my stylesheet. worx on Mac IE, firefox, Internet-Explorer, Safari...
I´am not an CSS expert... but it worx!
here u can see a quik-and-dirty-demo!
http://193.22.164.51/phpwcms/index.php
this is my stylesheet. worx on Mac IE, firefox, Internet-Explorer, Safari...
I´am not an CSS expert... but it worx!
here u can see a quik-and-dirty-demo!
http://193.22.164.51/phpwcms/index.php
Code: Select all
/****************** menu functionality******************/
ul.dropdown { /* complete lists */
font-family: Arial,Verdana, Helvetica, sans-serif;
font-size: 11px;
a:link: #000000;
padding: 0;
margin: 0px 0 0px 143px;
list-style: none;
text-align: center;
height: 6px;
}
ul.dropdown li { /* list items */
float: left;
position: relative;
width: 125px;
/*border-bottom: 1px solid #E2E2E2;*/
}
ul.dropdown li ul { /* second-level lists */
display: none;
position: absolute;
top: 24px;
left: 0;
margin: 0;
padding: 0;
background-color: White;
list-style: none;
border-top: 1px solid #BBBBBB;
z-index: 99;
}
ul.dropdown li>ul {
top: auto;
left: auto;
}
ul.dropdown ul * ul {
left:98%;
top:0;
width:100%;
}
ul.dropdown li ul li {
border: none;
list-style: none;
padding: 0;
margin: 0;
width: 125px;
border-left: 1px solid #BBBBBB;
border-right: 1px solid #BBBBBB;
border-bottom: 1px solid #BBBBBB;
}
ul.dropdown li:hover ul, ul.dropdown li.over ul { /* lists nested under hovered list items */
display: block;
}
ul.dropdown span {
visibility: hidden;
}
ul.dropdown a {
text-decoration: none;
color: Black;
margin: 0;
padding: 5px 0px;
display: block;
width: 125px;
background-color: #EBEBEB;
font-weight: normal;
}
ul.dropdown a:hover {
background-color: #FFFFFF;
color: #000000;
text-decoration: none;
}
ul.dropdown a:link {
color: #000000;
text-decoration: none;
}
ul.dropdown a:visited {
color: #000000;
text-decoration: none;
}
ul.dropdown a:active {
color: #000000;
text-decoration: none;
}
ul.dropdown ul * ul
{
left:98%;
top:0;
width:100%;
}
For me on FireFox Mac/Win and Safari the 3rd level menus always show with the 2nd level menus. Also there is some poor width/border/alignment issue with the browsers that do work properly. I think my CSS is mostly on track except for the first level not sizing properly. Part of my issue I believe is that I'm wanting to use auto for the widths to maximize my 1st level menu space. I'm guessing IE Mac and Opera have different interpretations of what an auto width is suppose to do, or they don't make use of auto all together.
ok here is some updated replacement-tag, that will work exactly like
{NAV_TABLE_COLUMN:x} does!
{NAV_TABLE_COLUMN:x} does!
Code: Select all
<?php
// -------------------------------------------------------------
if( ! ( strpos($content["all"],'{DROPDOWN')===false ) ) {
$content["all"] = str_replace('{DROPDOWN}', '{DROPDOWN:0}', $content["all"]);
$replace = 'build_dhtmlmenu( "$1","id=nav", 0);';
$content["all"] = preg_replace('/\{DROPDOWN:(\d+)\}/e', $replace, $content["all"]);
}
// -------------------------------------------------------------
?>