Commit f61bf302 authored by jerry wham's avatar jerry wham
Browse files

Initial commit

parents
<?php
if (empty($_GET)) {
header('location:index.php');
exit();
}
include_once 'prepend.php';
//Duplicate
if (isset($_GET['duplicate']) && is_file(MS5E_SLIDES_PATH.'content'.DS.$_GET['duplicate'].'.txt') ) {
$nextId = nextId(MS5E_SLIDES_PATH.'content');
copy(MS5E_SLIDES_PATH.'content'.DS.$_GET['duplicate'].'.txt',MS5E_SLIDES_PATH.'content'.DS.$nextId.'.txt');
}
//Rename
if (isset($_GET['rename']) && is_file(MS5E_SLIDES_PATH.'content'.DS.$_GET['old'].'.txt') ) {
$new = str_pad(intval($_GET['rename']),4, '0', STR_PAD_LEFT);
$nextId = nextId(MS5E_SLIDES_PATH.'content');
if (intval($new) > intval($nextId) || intval($new) <= 0) {
$new = $nextId;
}
if (is_file(MS5E_SLIDES_PATH.'content'.DS.$_GET['old'].'.txt')) {
rename(MS5E_SLIDES_PATH.'content'.DS.$_GET['old'].'.txt',MS5E_SLIDES_PATH.'content'.DS.'tmp.txt');
}
if (is_file(MS5E_SLIDES_PATH.'content'.DS.$new.'.txt')) {
rename(MS5E_SLIDES_PATH.'content'.DS.$new.'.txt',MS5E_SLIDES_PATH.'content'.DS.$_GET['old'].'.txt');
}
if (is_file(MS5E_SLIDES_PATH.'content'.DS.'tmp.txt')) {
rename(MS5E_SLIDES_PATH.'content'.DS.'tmp.txt',MS5E_SLIDES_PATH.'content'.DS.$new.'.txt');
}
}
//Remove
if (isset($_GET['remove']) && is_file(MS5E_SLIDES_PATH.'content'.DS.$_GET['remove'].'.txt') ) {
unlink(MS5E_SLIDES_PATH.'content'.DS.$_GET['remove'].'.txt');
reIndexSlides();
}
//Edit
if (isset($_GET['edit']) && is_file(MS5E_SLIDES_PATH.'content'.DS.$_GET['edit'].'.txt') ) {
$content = file_get_contents(MS5E_SLIDES_PATH.'content'.DS.$_GET['edit'].'.txt');
$content = trim(str_replace(
array(
'<div class="slide"> <!-- slide -->',
'<div class="notes"> <!-- notes -->',
'</div> <!-- /notes -->'
),
array(
'START_SLIDE',
'START_NOTES',
'END_NOTES'
),$content));
$slide_number = $_GET['edit'];
$slide_content = trim(mb_strcut($content,11,mb_strpos($content,'START_NOTES',0,'UTF-8')-11,'UTF-8'));
$content = mb_strcut($content,mb_strpos($content,'START_NOTES',0,'UTF-8')+11);
$notes_content = trim(mb_strcut($content,9,mb_strpos($content,'END_NOTES',0,'UTF-8')-9,'UTF-8'));
}
//Preview
if(isset($_GET['preview'])) {
recSlider($TITLE,$LANG,$AUTHOR,$COMPANY,$MAIN_TITLE,$MEETING_PLACE,$COMPANY_LINK);
$name = title2filename($TITLE);
$racine = getRacine().'data/presentation/';
header('Location:'.$racine.$name.'.html');
exit();
}
//Reset
if (isset($_GET['reset'])){
$name = title2filename($TITLE);
$files = initCache(MS5E_SLIDES_PATH.'content','files',true);
if (is_file(MS5E_PRESENTATION_PATH.$name.'.html')) {
unlink(MS5E_ROOT.'box.css');
unlink(MS5E_PRESENTATION_PATH.$name.'.html');
unlink(MS5E_TMP_PATH.$name.'.zip');
file_put_contents(MS5E_PRESENTATION_PATH.'ui'.DS.$THEME.DS.'pretty.css','<?php'."\n");
file_put_contents(MS5E_SLIDES_PATH.'colors.php','<?php'."\n");
file_put_contents(MS5E_SLIDES_PATH.'params.php','<?php'."\n");
file_put_contents(MS5E_SLIDES_PATH.'footer.php','');
foreach ($files as $key => $file) {
if (is_file(MS5E_SLIDES_PATH.'content'.DS.$file)) {
unlink(MS5E_SLIDES_PATH.'content'.DS.$file);
}
}
}
}
//Download zipFile
if (isset($_GET['download'])) {
$zip=new zip;
$zip->create(MS5E_PRESENTATION_PATH,MS5E_TMP_PATH.title2filename($TITLE).'.zip');
$zip->download();
}
\ No newline at end of file
/* The following styles size, place, and layer the slide components.
Edit these if you want to change the overall slide layout.
The commented lines can be uncommented (and modified, if necessary)
to help you with the rearrangement process. */
/* target = 1024x768 */
div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}
div#header {top: 0; height: 3em; z-index: 1;}
div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}
.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2; list-style: none;}
div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}
div#controls form {text-align: right; width: 100%; margin: 0;}
#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}
html>body #currentSlide {position: fixed;}
/*
div#header {background: #FCC;}
div#footer {background: #CCF;}
div#controls {background: #BBD;}
div#currentSlide {background: #FFC;}
*/
<public:component>
<public:attach event="onpropertychange" onevent="doFix()" />
<script>
// IE5.5+ PNG Alpha Fix v1.0 by Angus Turnbull http://www.twinhelix.com
// Free usage permitted as long as this notice remains intact.
// This must be a path to a blank image. That's all the configuration you need here.
var blankImg = 'ui/default/blank.gif';
var f = 'DXImageTransform.Microsoft.AlphaImageLoader';
function filt(s, m) {
if (filters[f]) {
filters[f].enabled = s ? true : false;
if (s) with (filters[f]) { src = s; sizingMethod = m }
} else if (s) style.filter = 'progid:'+f+'(src="'+s+'",sizingMethod="'+m+'")';
}
function doFix() {
if ((parseFloat(navigator.userAgent.match(/MSIE (\S+)/)[1]) < 5.5) ||
(event && !/(background|src)/.test(event.propertyName))) return;
if (tagName == 'IMG') {
if ((/\.png$/i).test(src)) {
filt(src, 'image'); // was 'scale'
src = blankImg;
} else if (src.indexOf(blankImg) < 0) filt();
} else if (style.backgroundImage) {
if (style.backgroundImage.match(/^url[("']+(.*\.png)[)"']+$/i)) {
var s = RegExp.$1;
style.backgroundImage = '';
filt(s, 'crop');
} else filt();
}
}
doFix();
</script>
</public:component>
\ No newline at end of file
/* Following are the note styles -- edit away! */
body {
margin: 0;
padding: 1.0em;
background: #333;
color: #FFF;
font: 2em/1.4em 'Lucida Grande', Verdana, sans-serif;
}
div.timers {
background: #FFF;
color: #333;
border: 0.08em solid #222;
border-top-width: 1px;
border-left-width: 1px;
float: left;
padding: 0.2em;
margin: 0 0 0.5em;
position: relative;
}
div.timers h1 {
text-align: left;
font-size: 0.6em;
line-height: 1.4em;
background-color: #FF9;
padding: 0 0.75em;
margin: 0.25em 0 0;
border: 1px solid #EE8;
}
div.timers div.controls {
position: absolute;
right: 0.25em;
top: 0.1em;
line-height: 1em;
}
div.timers h1 a {
text-decoration: none;
color: #000;
}
div.timers div.controls a {
font-size: 0.5em;
padding: 0;
color: #330;
}
div.timers a.control {
position: absolute;
text-decoration: none;
padding: 0 0.25em;
color: #AAA;
outline: 0;
}
#minus {
left: 0.25em;
}
#plus {
right: 0.25em;
}
.overtime {
background: yellow;
color: red;
border: 3px solid;
padding: 0.1em 0.25em;
font-weight: bold;
}
div.timers h2 {
font-size: 0.6em;
line-height: 1.0em;
font-weight: normal;
margin: 0 0 -0.25em;
padding-top: 0.5em;
color: #666;
}
div.timers p {margin: 0; padding: 0 0.5em;}
div.timers form {margin: 0;}
div.timers span.clock {
font-family: monospace;
}
div.timers ul {margin: 0; padding: 0; list-style: none;}
div.timers li {float: left; width: 5em; margin: 0; padding: 0 0.5em;
text-align: center;}
div#elapsed {width: 12.1em;}
div#remaining {clear: left; width: 12.1em;}
div#remaining p {text-align: center;}
#slide,
#next,
#notes,
#nextnotes {
font-size: 0.75em;
line-height: 1.4em;
clear: left;
/* max-width: 30.0em; */
text-shadow: 0.1em 0.1em 0.1em #111;
}
#next {margin-top: 2.5em;}
#next, #nextnotes {
color: #999;
font-size: 0.66em;
}
em.disclaimer {
color: #666;
}
div.collapsed h1 {display: block; font-size: 0.33em;}
div.collapsed h1 a {display: inline;}
div.collapsed * {display: none;}
/* DO NOT CHANGE THESE unless you really want to break Opera Show */
.slide {
visibility: visible !important;
position: static !important;
page-break-before: always;
}
#slide0 {page-break-before: avoid;}
/* don't change this unless you want the layout stuff to show up in the outline view! */
.layout div, #footer *, #controlForm * {display: none;}
#footer, #controls, #controlForm, #navLinks, #toggle {
display: block; visibility: visible; margin: 0; padding: 0;}
#toggle {float: right; padding: 0.5em;}
html>body #toggle {position: fixed; top: 0; right: 0;}
/* making the outline look pretty-ish */
#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}
#slide0 h1 {padding-top: 1.5em;}
.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;
border-top: 1px solid #888; border-bottom: 1px solid #AAA;}
#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}
/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */.slide, ul {page-break-inside: avoid; visibility: visible !important;}h1 {page-break-after: avoid;} body {font-size: 12pt; background: white;}* {color: black;} #slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}#slide0 h3 {margin: 0; padding: 0;}#slide0 h4 {margin: 0 0 0.5em; padding: 0;}#slide0 {margin-bottom: 3em;} h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}.extra {background: transparent !important;}div.extra, pre.extra, .example {font-size: 10pt; color: #333;}ul.extra a {font-weight: bold;}p.example {display: none;} #header {display: none;}#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}#footer h2, #controls {display: none;} /* The following rule keeps the layout stuff out of print. Remove at your own risk! */.layout, .layout * {display: none !important;}
\ No newline at end of file
/* Do not edit or override these styles! The system will likely break if you do. */
div#header, div#footer, div#controls, .slide {position: absolute;}
html>body div#header, html>body div#footer,
html>body div#controls, html>body .slide {position: fixed;}
.handout, .notes {display: none;}
.layout {display: block;}
.slide, .hideme, .incremental {visibility: hidden;}
#slide0 {visibility: visible;}
@import url(s5-core.css); /* required to make the slide show run at all */
@import url(framing.css); /* sets basic placement and size of slide components */
@import url(pretty.css); /* stuff that makes the slides look better than blah */
\ No newline at end of file
This diff is collapsed.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Do not edit this document! The system will likely break if you do. -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Notes</title>
<link rel="stylesheet" href="default/notes.css" type="text/css" />
<script type="text/javascript">
// <![CDATA[
document.onkeyup = opener.keys;
document.onkeypress = opener.trap;
document.onclick = opener.clicker;
// ]]>
</script>
</head>
<body onload="opener.s5NotesWindowLoaded=true;" onunload="opener.s5NotesWindowLoaded=false;">
<div class="timers" id="elapsed">
<h1>
<a href="#" onclick="opener.minimizeTimer('elapsed'); return false;">Elapsed Time</a>
</h1>
<ul>
<li>
<h2>Presentation</h2>
<span class="clock" id="elapsed-presentation">00:00:00</span>
</li>
<li>
<h2>Current Slide</h2>
<span class="clock" id="elapsed-slide">00:00:00</span>
</li>
</ul>
<div class="controls">
<a href="#reset-elapsed" onclick="opener.resetElapsedTime(); return false;" title="Reset Elapsed Time">|&larr;</a>
</div>
</div>
<div class="timers" id="remaining">
<h1>
<a href="#" onclick="opener.minimizeTimer('remaining'); return false;">Remaining Time</a>
</h1>
<p>
<a href="#subtract-remaining" class="control" id="minus" onclick="opener.alterRemainingTime('-5'); return false;" title="Subtract 5 Minutes">-</a>
<span class="clock" id="timeLeft">00:00:00</span>
<a href="#add-remaining" class="control" id="plus" onclick="opener.alterRemainingTime('5'); return false;" title="Add 5 Minutes">+</a>
</p>
<div class="controls">
<form action="#" onsubmit="opener.resetRemainingTime(); return false;">
<input type="text" class="text" id="startFrom" value="0" size="4" maxlength="4" />
<a href="#toggle-remaining" onclick="opener.toggleRemainingTime(); return false;" title="Pause/Run Remaining Time">||</a>
<a href="#reset-remaining" onclick="opener.resetRemainingTime(); return false;" title="Reset Remaining Time">|&larr;</a>
</form>
</div>
</div>
<h2 id="slide">...</h2>
<div id="notes"></div>
<h2 id="next">...</h2>
<div id="nextnotes"></div>
</body>
</html>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment