AEOS Calvarium v0.5
This commit is contained in:
parent
57b531cb62
commit
1fa8b9e152
177 changed files with 2936 additions and 3386 deletions
1601
admin/base.php
Executable file → Normal file
1601
admin/base.php
Executable file → Normal file
File diff suppressed because it is too large
Load diff
153
admin/index.php
Executable file → Normal file
153
admin/index.php
Executable file → Normal file
|
|
@ -1,14 +1,10 @@
|
|||
<?php
|
||||
ob_start();
|
||||
session_start();
|
||||
|
||||
// Inclusion des librairie
|
||||
require_once ('../lib/aeos.lib.php');
|
||||
require_once ('../lib/config.lib.php');
|
||||
require_once ('../lib/var.lib.php');
|
||||
$password = AEOS_PASSWORD;
|
||||
$login = AEOS_LOGIN;
|
||||
$email = AEOS_MAIL;
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
|
|
@ -18,83 +14,100 @@ $email = AEOS_MAIL;
|
|||
<title><?php echo AEOS_NAME; ?></title>
|
||||
<meta name="description" content="<?php echo AEOS_DESC; ?>" />
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../themes/system/styles.css" />
|
||||
<script type="text/javascript" src="owEditor/owEditor.js"></script>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../themes/system/css/fontello.css" />
|
||||
<script type="text/javascript" src="pell/pell.min.js"></script>
|
||||
<link rel="icon" type="image/png" href="../themes/<?php echo AEOS_THEME; ?>/images/favicon_aeos.ico" />
|
||||
<?php echo checkFiles(AEOS_MODULE.'/'.AEOS_THEME, 0, $subdir)["Data"]; ?>
|
||||
</head>
|
||||
<?php if(!isset($_SESSION['_LOGIN']) || !isset($_SESSION['_PASSWORD'])){ ?>
|
||||
<?php if(!isset($_SESSION['_LOGIN'])){ ?>
|
||||
<body>
|
||||
<div id="Layout"></div>
|
||||
<div id="Administration">
|
||||
<h1><img src="../themes/system/images/logo_black.png" alt="Logo AEOS" /></h1>
|
||||
<h6>
|
||||
<img src="../themes/system/images/icones/logout.png" alt="Logout" class="icon" />
|
||||
Administration - AEOS
|
||||
</h6>
|
||||
|
||||
<?php
|
||||
if (@$_GET['action']=="mdpperdu")
|
||||
{
|
||||
if(isset($_POST['login']) && isset($_POST['email']))
|
||||
<div id="Administration">
|
||||
<h1>
|
||||
<img src="../themes/system/images/aeos_logo_A_blanc.png" alt=" <?php echo $lang["login_SecurePanel"]; ?>" />
|
||||
</h1>
|
||||
<?php
|
||||
switch(@$_['o'])
|
||||
{
|
||||
case 'lostPassword':
|
||||
if (isset($_['email']))
|
||||
{
|
||||
if(($login == $_POST['login']) && (strtolower($email) == strtolower($_POST['email'])))
|
||||
// User exists ? Email matches ?
|
||||
if(isset($config['configuration']['users'][$_['login']]) && strtolower($config['configuration']['users'][$_['login']]['email']['#text']) == strtolower($_['email']))
|
||||
{
|
||||
$mdp = generer_mdp(12);
|
||||
sendMail(AEOS_NAME, $email, "Récupération de mot de passe", "Ce mail provient de ".AEOS_NAME.".\nVous avez fait une demande de nouveau mot de passe.\n\nVoici votre nouveau mot de passe: ".$mdp);
|
||||
ecriture_xml('../data/config.xml', 'mdp_admin', md5($mdp));
|
||||
echo "<p><span class='valide'>Un email vous a été envoyé.</span></p>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<p><span class='erreur'>Login ou email incorrect.</span></p>";
|
||||
$generatedPassword = generateEasyPassword(12);
|
||||
$generatedPassword = password_hash($generatedPassword,PASSWORD_DEFAULT);
|
||||
sendMail(AEOS_NAME, $config['configuration']['users'][$_['login']]['email']['#text'], $lang['mail_passwordBack'], $lang['mail_newPassword']." ".$generatedPassword);
|
||||
ecriture_xml('../data/config.xml', array('configuration/users/'.$_['login'].'/password'=>$generatedPassword));
|
||||
?><div class='notification valide'><p><i class="icon-emo-happy"></i> <?php echo $lang['mailSentToYou']; ?></p></div><?php
|
||||
}
|
||||
else { ?><div class='notification error'><p><i class="icon-emo-unhappy"></i> <?php echo $lang['wrongLoginEmail']; ?></p></div><?php }
|
||||
}
|
||||
|
||||
?>
|
||||
<div class="form">
|
||||
<form class="login-form" action="index.php?o=lostPassword" method="POST">
|
||||
<input type="text" name="login" placeholder="<?php echo $lang["login_Username"]; ?>"/>
|
||||
<input type="email" name="email" placeholder="<?php echo $lang["mailAddress"]; ?>"/>
|
||||
<button><?php echo $lang["login_sendNewPassword"]; ?></button>
|
||||
<p class="message">
|
||||
<a href="index.php"><?php echo $lang["cancel"]; ?></a>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
break;
|
||||
|
||||
default:
|
||||
?>
|
||||
<form action="index.php?action=mdpperdu" method="POST">
|
||||
<p>Login<br /><input type="text" name="login" class="input_text" value="" /></p>
|
||||
<p>Email<br /><input type="text" name="email" class="input_text" value="" /></p>
|
||||
<p><input type="submit" value="Renvoyer un mot de passe" class="input_button" /></p>
|
||||
</form>
|
||||
<p><a href="index.php" class="link">Retour</a></p>
|
||||
<?php
|
||||
}
|
||||
else
|
||||
{
|
||||
if(isset($_POST['login']) && isset($_POST['mdp']))
|
||||
<div class="form">
|
||||
<form class="login-form" action="index.php" method="POST">
|
||||
<input type="text" name="login" placeholder="<?php echo $lang["login_Username"]; ?>"/>
|
||||
<input type="password" name="password" placeholder="<?php echo $lang["login_Password"]; ?>"/>
|
||||
<button><i class="icon-login"></i><?php echo $lang["login_Connexion"]; ?></button>
|
||||
<p class="message">
|
||||
<a href="index.php?o=lostPassword"><?php echo $lang["login_ForgotPassword"]; ?></a>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
if(isset($_['login']) && isset($_['password']))
|
||||
{
|
||||
if(($login == $_POST['login']) && ($password == md5($_POST['mdp'])))
|
||||
// User exists ? Password matches ?
|
||||
if(isset($config['configuration']['users'][$_['login']]) && password_verify($_['password'], $config['configuration']['users'][$_['login']]['password']['#text']))
|
||||
{
|
||||
$_SESSION['_LOGIN'] = $login;
|
||||
$_SESSION['_PASSWORD'] = $password;
|
||||
$n = lecture_xml(URL_CHECK_UPDATE);
|
||||
if($n['notifications']['update']['#text']!=UPDATE)
|
||||
{
|
||||
$_SESSION['_NOTIFICATIONS']=TRUE;
|
||||
copy(URL_CHECK_UPDATE, 'notifications.xml');
|
||||
}
|
||||
else
|
||||
{
|
||||
$_SESSION['_NOTIFICATIONS']=FALSE;
|
||||
}
|
||||
if($_SESSION['_NOTIFICATIONS']) ecriture_xml('../data/config.xml', 'update', $n['notifications']['update']['#text']);
|
||||
header('Location: index.php');
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<p><span class='erreur'>Login ou mot de passe incorrect.</span></p>";
|
||||
$_SESSION['_LOGIN'] = $_['login'];
|
||||
//$_SESSION['_PASSWORD'] = $_['password'];
|
||||
header('Location: index.php');
|
||||
}
|
||||
else { ?><div class='notification error'><p><i class="icon-emo-unhappy"></i> <?php echo $lang['wrongLoginPassword']; ?></p></div><?php }
|
||||
}
|
||||
?>
|
||||
<form action="index.php" method="POST">
|
||||
<p>LOGIN<br /><input type="text" name="login" class="input_text" value="" /></p>
|
||||
<p>MOT DE PASSE<br /><input type="password" name="mdp" class="input_text" value="" /></p>
|
||||
<p><input type="submit" value="Connexion" class="input_button" /></p>
|
||||
<p><a href="index.php?action=mdpperdu" class="link">Mot de passe perdu ?</a></p>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
?>
|
||||
|
||||
|
||||
<div id="Footer">
|
||||
<img src="../themes/system/images/logo_a4_300.png" width="250" alt="Logo" />
|
||||
<p>
|
||||
AEOS v<?php echo AEOS_VERSION; ?> - <?php echo $lang["footer_version_loved"]; ?>
|
||||
</p>
|
||||
<hr />
|
||||
<h5><?php echo AEOS_BRANCH; ?>/version_<?php echo AEOS_UPDATE; ?>.zip</h5>
|
||||
<p class="copyright"><?php echo $lang["login_msg_Layus"]; ?></p>
|
||||
</div>
|
||||
</body>
|
||||
<?php } else {require_once('base.php');} ?>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
<?php } else
|
||||
{
|
||||
$returned = checkFiles(AEOS_MODULE.'/'.AEOS_THEME, 1, $subdir);
|
||||
if($returned['OB'])
|
||||
{
|
||||
ob_start();
|
||||
include_once('base.php');
|
||||
$eyecatcher = ob_get_clean();
|
||||
echo insertPlugins($eyecatcher, $returned);
|
||||
}
|
||||
else require_once('base.php');
|
||||
} ?>
|
||||
</html>
|
||||
<?php ob_end_flush(); ?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<notifications>
|
||||
<message>
|
||||
<type>normal</type>
|
||||
<contenu>De nouveaux commentaires 06</contenu>
|
||||
<lien>http://google.fr</lien>
|
||||
</message>
|
||||
|
||||
<message>
|
||||
<type>apply</type>
|
||||
<contenu>De nouveaux commentaires 06</contenu>
|
||||
<lien>http://google.fr</lien>
|
||||
</message>
|
||||
|
||||
<message>
|
||||
<type>update</type>
|
||||
<contenu>De nouveaux commentaires 06</contenu>
|
||||
<lien>http://google.fr</lien>
|
||||
</message>
|
||||
|
||||
<message>
|
||||
<type>bug</type>
|
||||
<contenu>De nouveaux commentaires 06</contenu>
|
||||
<lien>http://google.fr</lien>
|
||||
</message>
|
||||
<update>06-07-2013</update>
|
||||
</notifications>
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.5 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 3.6 KiB |
|
|
@ -1,80 +0,0 @@
|
|||
function __(a){return a}function $BK(a){"string"==typeof a&&(a=document.getElementById(a));return a&&!a.appendTo?bkExtend(a,bkElement.prototype):a}function bkClass(){}var bkExtend=function(){var a=arguments;1==a.length&&(a=[this,a[0]]);for(var b in a[1])a[0][b]=a[1][b];return a[0]};bkClass.prototype.construct=function(){};
|
||||
bkClass.extend=function(a){var b=function(){if(arguments[0]!==bkClass)return this.construct.apply(this,arguments)},c=new this(bkClass);bkExtend(c,a);b.prototype=c;b.extend=this.extend;return b};
|
||||
var bkElement=bkClass.extend({construct:function(a,b){"string"==typeof a&&(a=(b||document).createElement(a));return a=$BK(a)},appendTo:function(a){a.appendChild(this);return this},appendBefore:function(a){a.parentNode.insertBefore(this,a);return this},addEvent:function(a,b){bkLib.addEvent(this,a,b);return this},setContent:function(a){this.innerHTML=a;return this},pos:function(){var a=curtop=0;obj=this;if(obj.offsetParent){do a+=obj.offsetLeft,curtop+=obj.offsetTop;while(obj=obj.offsetParent)}var b=
|
||||
window.opera?0:parseInt(this.getStyle("border-width")||this.style.border)||0;return[a+b,curtop+b+this.offsetHeight]},noSelect:function(){bkLib.noSelect(this);return this},parentTag:function(a){var b=this;do{if(b&&b.nodeName&&b.nodeName.toUpperCase()==a)return b;b=b.parentNode}while(b);return!1},hasClass:function(a){return this.className.match(RegExp("(\\s|^)owEdit-"+a+"(\\s|$)"))},addClass:function(a){this.hasClass(a)||(this.className+=" owEdit-"+a);return this},removeClass:function(a){this.hasClass(a)&&
|
||||
(this.className=this.className.replace(RegExp("(\\s|^)owEdit-"+a+"(\\s|$)")," "));return this},setStyle:function(a){var b=this.style,c;for(c in a)switch(c){case "float":b.cssFloat=b.styleFloat=a[c];break;case "opacity":b.opacity=a[c];b.filter="alpha(opacity="+Math.round(100*a[c])+")";break;case "className":this.className=a[c];break;default:b[c]=a[c]}return this},getStyle:function(a,b){var c=b?b:document.defaultView;if(1==this.nodeType)return c&&c.getComputedStyle?c.getComputedStyle(this,null).getPropertyValue(a):
|
||||
this.currentStyle[bkLib.camelize(a)]},remove:function(){this.parentNode.removeChild(this);return this},setAttributes:function(a){for(var b in a)this[b]=a[b];return this}}),bkLib={isMSIE:-1!=navigator.appVersion.indexOf("MSIE"),addEvent:function(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent("on"+b,c)},toArray:function(a){for(var b=a.length,c=Array(b);b--;)c[b]=a[b];return c},noSelect:function(a){a.setAttribute&&("input"!=a.nodeName.toLowerCase()&&"textarea"!=a.nodeName.toLowerCase())&&
|
||||
a.setAttribute("unselectable","on");for(var b=0;b<a.childNodes.length;b++)bkLib.noSelect(a.childNodes[b])},camelize:function(a){return a.replace(/\-(.)/g,function(a,c){return c.toUpperCase()})},inArray:function(a,b){return null!=bkLib.search(a,b)},search:function(a,b){for(var c=0;c<a.length;c++)if(a[c]==b)return c;return null},cancelEvent:function(a){a=a||window.event;a.preventDefault&&a.stopPropagation&&(a.preventDefault(),a.stopPropagation());return!1},domLoad:[],domLoaded:function(){if(!arguments.callee.done)for(arguments.callee.done=
|
||||
!0,i=0;i<bkLib.domLoad.length;i++)bkLib.domLoad[i]()},onDomLoaded:function(a){this.domLoad.push(a);document.addEventListener?document.addEventListener("DOMContentLoaded",bkLib.domLoaded,null):bkLib.isMSIE&&(document.write("<style>.owEdit-main p { margin: 0; }</style><script id=__ie_onload defer "+("https:"==location.protocol?"src='javascript:void(0)'":"src=//0")+">\x3c/script>"),$BK("__ie_onload").onreadystatechange=function(){"complete"==this.readyState&&bkLib.domLoaded()});window.onload=bkLib.domLoaded}},
|
||||
bkEvent={addEvent:function(a,b){b&&(this.eventList=this.eventList||{},this.eventList[a]=this.eventList[a]||[],this.eventList[a].push(b));return this},fireEvent:function(){var a=bkLib.toArray(arguments),b=a.shift();if(this.eventList&&this.eventList[b])for(var c=0;c<this.eventList[b].length;c++)this.eventList[b][c].apply(this,a)}};Function.prototype.closure=function(){var a=this,b=bkLib.toArray(arguments),c=b.shift();return function(){if("undefined"!=typeof bkLib)return a.apply(c,b.concat(bkLib.toArray(arguments)))}};
|
||||
Function.prototype.closureListener=function(){var a=this,b=bkLib.toArray(arguments),c=b.shift();return function(d){d=d||window.event;return a.apply(c,[d,d.target?d.target:d.srcElement].concat(b))}};
|
||||
var owEditorConfig=bkClass.extend({buttons:{bold:{name:__("Gras"),command:"Bold",tags:["B","STRONG"],css:{"font-weight":"bold"},key:"b"},italic:{name:__("Italique"),command:"Italic",tags:["EM","I"],css:{"font-style":"italic"},key:"i"},underline:{name:__("Souligner"),command:"Underline",tags:["U"],css:{"text-decoration":"underline"},key:"u"},left:{name:__("Alignement \u00e0 gauche"),command:"justifyleft",noActive:!0},center:{name:__("Centrer"),command:"justifycenter",noActive:!0},right:{name:__("Alignement \u00e0 droite"),
|
||||
command:"justifyright",noActive:!0},justify:{name:__("Alignement justifi\u00e9"),command:"justifyfull",noActive:!0},ol:{name:__("Liste num\u00e9rot\u00e9e"),command:"insertorderedlist",tags:["OL"]},ul:{name:__("Liste simple"),command:"insertunorderedlist",tags:["UL"]},subscript:{name:__("Mettre en exposant"),command:"subscript",tags:["SUB"]},superscript:{name:__("Mettre en indice"),command:"superscript",tags:["SUP"]},strikethrough:{name:__("Rayer"),command:"strikeThrough",css:{"text-decoration":"line-through"}},
|
||||
removeformat:{name:__("Retirer le formatage"),command:"removeformat",noActive:!0},indent:{name:__("Indenter"),command:"indent",noActive:!0},outdent:{name:__("Retirer l'indentation"),command:"outdent",noActive:!0},hr:{name:__("Ligne horizontale"),command:"insertHorizontalRule",noActive:!0}},iconsPath:"owEditor/owEditor.gif",buttonList:"save bold italic underline left center right justify ol ul fontSize fontFamily fontFormat indent outdent image upload link unlink forecolor bgcolor".split(" "),iconList:{xhtml:1,
|
||||
bgcolor:2,forecolor:3,bold:4,center:5,hr:6,indent:7,italic:8,justify:9,left:10,ol:11,outdent:12,removeformat:13,right:14,save:25,strikethrough:16,subscript:17,superscript:18,ul:19,underline:20,image:21,link:22,unlink:23,close:24,arrow:26,upload:27}}),owEditors={owPlugins:[],editors:[],registerPlugin:function(a,b){this.owPlugins.push({p:a,o:b})},allTextAreas:function(a){for(var b=document.getElementsByTagName("textarea"),c=0;c<b.length;c++)owEditors.editors.push((new owEditor(a)).panelInstance(b[c]));
|
||||
return owEditors.editors},findEditor:function(a){for(var b=owEditors.editors,c=0;c<b.length;c++)if(b[c].instanceById(a))return b[c].instanceById(a)}},owEditor=bkClass.extend({construct:function(a){this.options=new owEditorConfig;bkExtend(this.options,a);this.owInstances=[];this.loadedPlugins=[];a=owEditors.owPlugins;for(var b=0;b<a.length;b++)this.loadedPlugins.push(new a[b].p(this,a[b].o));owEditors.editors.push(this);bkLib.addEvent(document.body,"mousedown",this.selectCheck.closureListener(this))},
|
||||
panelInstance:function(a,b){a=this.checkReplace($BK(a));var c=(new bkElement("DIV")).setStyle({width:(parseInt(a.getStyle("width"))||a.clientWidth)+"px"}).appendBefore(a);this.setPanel(c);return this.addInstance(a,b)},checkReplace:function(a){var b=owEditors.findEditor(a);b&&(b.removeInstance(a),b.removePanel());return a},addInstance:function(a,b){a=this.checkReplace($BK(a));var c=a.contentEditable||window.opera?new owEditorInstance(a,b,this):new owEditorIFrameInstance(a,b,this);this.owInstances.push(c);
|
||||
return this},removeInstance:function(a){a=$BK(a);for(var b=this.owInstances,c=0;c<b.length;c++)b[c].e==a&&(b[c].remove(),this.owInstances.splice(c,1))},removePanel:function(a){this.owPanel&&(this.owPanel.remove(),this.owPanel=null)},instanceById:function(a){a=$BK(a);for(var b=this.owInstances,c=0;c<b.length;c++)if(b[c].e==a)return b[c]},setPanel:function(a){this.owPanel=new owEditorPanel($BK(a),this.options,this);this.fireEvent("panel",this.owPanel);return this},owCommand:function(a,b){this.selectedInstance&&
|
||||
this.selectedInstance.owCommand(a,b)},getIcon:function(a,b){var c=this.options.iconList[a],d=b.iconFiles?b.iconFiles[a]:"";return{backgroundImage:"url('"+(c?this.options.iconsPath:d)+"')",backgroundPosition:(c?-18*(c-1):0)+"px 0px"}},selectCheck:function(a,b){do if(b.className&&-1!=b.className.indexOf("owEdit"))return!1;while(b=b.parentNode);this.fireEvent("blur",this.selectedInstance,b);this.lastSelectedInstance=this.selectedInstance;this.selectedInstance=null;return!1}}),owEditor=owEditor.extend(bkEvent),
|
||||
owEditorInstance=bkClass.extend({isSelected:!1,construct:function(a,b,c){this.ne=c;this.elm=this.e=a;this.options=b||{};newX=parseInt(a.getStyle("width"))||a.clientWidth;newY=parseInt(a.getStyle("height"))||a.clientHeight;this.initialHeight=newY-8;if((c="textarea"==a.nodeName.toLowerCase())||this.options.hasPanel){b=bkLib.isMSIE&&!("undefined"!=typeof document.body.style.maxHeight&&"CSS1Compat"==document.compatMode);var d={width:newX+"px",backgroundColor:"#fff",borderTop:0,overflowY:"auto",overflowX:"hidden"};
|
||||
d[b?"height":"maxHeight"]=this.ne.options.maxHeight?this.ne.options.maxHeight+"px":null;this.editorContain=(new bkElement("DIV")).setStyle(d).appendBefore(a);d=(new bkElement("DIV")).setStyle({margin:"4px",minHeight:newY+"px"}).addClass("main").appendTo(this.editorContain);d.setAttribute("id","owEdit-main");a.setStyle({display:"none"});d.innerHTML=a.innerHTML;c&&(d.setContent(a.value),this.copyElm=a,(a=a.parentTag("FORM"))&&bkLib.addEvent(a,"submit",this.saveContent.closure(this)));d.setStyle(b?{height:newY+
|
||||
"px"}:{overflow:"hidden"});this.elm=d}this.ne.addEvent("blur",this.blur.closure(this));this.init();this.blur()},init:function(){this.elm.setAttribute("contentEditable","true");""==this.getContent()&&this.setContent("<br />");this.instanceDoc=document.defaultView;this.elm.addEvent("mousedown",this.selected.closureListener(this)).addEvent("keypress",this.keyDown.closureListener(this)).addEvent("focus",this.selected.closure(this)).addEvent("blur",this.blur.closure(this)).addEvent("keyup",this.selected.closure(this));
|
||||
this.ne.fireEvent("add",this)},remove:function(){this.saveContent();if(this.copyElm||this.options.hasPanel)this.editorContain.remove(),this.e.setStyle({display:"block"}),this.ne.removePanel();this.disable();this.ne.fireEvent("remove",this)},disable:function(){this.elm.setAttribute("contentEditable","false")},getSel:function(){return window.getSelection?window.getSelection():document.selection},getRng:function(){var a=this.getSel();return a?0<a.rangeCount?a.getRangeAt(0):a.createRange():null},selRng:function(a,
|
||||
b){window.getSelection?(b.removeAllRanges(),b.addRange(a)):a.select()},selElm:function(){var a=this.getRng();if(a.startContainer){var b=a.startContainer;if(1==a.cloneContents().childNodes.length)for(var c=0;c<b.childNodes.length;c++){var d=b.childNodes[c].ownerDocument.createRange();d.selectNode(b.childNodes[c]);if(1!=a.compareBoundaryPoints(Range.START_TO_START,d)&&-1!=a.compareBoundaryPoints(Range.END_TO_END,d))return $BK(b.childNodes[c])}return $BK(b)}return $BK("Control"==this.getSel().type?a.item(0):
|
||||
a.parentElement())},saveRng:function(){this.savedRange=this.getRng();this.savedSel=this.getSel()},restoreRng:function(){this.savedRange&&this.selRng(this.savedRange,this.savedSel)},keyDown:function(a,b){a.ctrlKey&&this.ne.fireEvent("key",this,a)},selected:function(a,b){b||(b=this.selElm());if(!a.ctrlKey){var c=this.ne.selectedInstance;c!=this&&(c&&this.ne.fireEvent("blur",c,b),this.ne.selectedInstance=this,this.ne.fireEvent("focus",c,b));this.ne.fireEvent("selected",c,b);this.isFocused=!0;this.elm.addClass("selected")}return!1},
|
||||
blur:function(){this.isFocused=!1;this.elm.removeClass("selected")},saveContent:function(){if(this.copyElm||this.options.hasPanel)this.ne.fireEvent("save",this),this.copyElm?this.copyElm.value=this.getContent():this.e.innerHTML=this.getContent()},getElm:function(){return this.elm},getContent:function(){this.content=this.getElm().innerHTML;this.ne.fireEvent("get",this);return"<br />"==this.content||"<br />"==this.content?"":this.content},setContent:function(a){this.content=a;this.ne.fireEvent("set",
|
||||
this);this.elm.innerHTML=this.content},owCommand:function(a,b){document.execCommand(a,!1,b)}}),owEditorIFrameInstance=owEditorInstance.extend({savedStyles:[],init:function(){var a=this.elm.innerHTML.replace(/^\s+|\s+$/g,"");this.elm.innerHTML="";a?a:a="<br />";this.initialContent=a;this.elmFrame=(new bkElement("iframe")).setAttributes({src:"javascript:;",frameBorder:0,allowTransparency:"true",scrolling:"no"}).setStyle({height:"100px"}).addClass("frame").appendTo(this.elm);this.copyElm&&this.elmFrame.setStyle({width:this.elm.offsetWidth-
|
||||
4+"px"});a=["font-size","font-family","font-weight","color"];for(itm in a)this.savedStyles[bkLib.camelize(itm)]=this.elm.getStyle(itm);setTimeout(this.initFrame.closure(this),50)},disable:function(){this.elm.innerHTML=this.getContent()},initFrame:function(){var a=$BK(this.elmFrame.contentWindow.document);a.designMode="on";a.open();var b=this.ne.options.externalCSS;a.write("<html><head>"+(b?'<link href="'+b+'" rel="stylesheet" type="text/css" />':"")+'</head><body id="owEditContent" style="margin: 0 !important; background-color: transparent !important;">'+
|
||||
this.initialContent+"</body></html>");a.close();this.frameDoc=a;this.frameWin=$BK(this.elmFrame.contentWindow);this.frameContent=$BK(this.frameWin.document.body).setStyle(this.savedStyles);this.instanceDoc=this.frameWin.document.defaultView;this.heightUpdate();this.frameDoc.addEvent("mousedown",this.selected.closureListener(this)).addEvent("keyup",this.heightUpdate.closureListener(this)).addEvent("keydown",this.keyDown.closureListener(this)).addEvent("keyup",this.selected.closure(this));this.ne.fireEvent("add",
|
||||
this)},getElm:function(){return this.frameContent},setContent:function(a){this.content=a;this.ne.fireEvent("set",this);this.frameContent.innerHTML=this.content;this.heightUpdate()},getSel:function(){return this.frameWin?this.frameWin.getSelection():this.frameDoc.selection},heightUpdate:function(){this.elmFrame.style.height=Math.max(this.frameContent.offsetHeight,this.initialHeight)+"px"},owCommand:function(a,b){this.frameDoc.execCommand(a,!1,b);setTimeout(this.heightUpdate.closure(this),100)}}),owEditorPanel=
|
||||
bkClass.extend({construct:function(a,b,c){this.elm=a;this.options=b;this.ne=c;this.panelButtons=[];this.buttonList=bkExtend([],this.ne.options.buttonList);this.panelContain=(new bkElement("DIV")).setStyle({overflow:"hidden"}).addClass("panelContain");this.panelElm=(new bkElement("DIV")).setStyle({margin:"2px",marginTop:"0px",zoom:1,overflow:"hidden"}).addClass("panel").appendTo(this.panelContain);this.panelContain.appendTo(a);b=this.ne.options;c=b.buttons;for(button in c)this.addButton(button,b,!0);
|
||||
this.reorder();a.noSelect()},addButton:function(a,b,c){c=b.buttons[a];c=c.type?eval("(typeof("+c.type+') == "undefined") ? null : '+c.type+";"):owEditorButton;var d=bkLib.inArray(this.buttonList,a);c&&(d||this.ne.options.fullPanel)&&(this.panelButtons.push(new c(this.panelElm,a,b,this.ne)),d||this.buttonList.push(a))},findButton:function(a){for(var b=0;b<this.panelButtons.length;b++)if(this.panelButtons[b].name==a)return this.panelButtons[b]},reorder:function(){for(var a=this.buttonList,b=0;b<a.length;b++){var c=
|
||||
this.findButton(a[b]);c&&this.panelElm.appendChild(c.margin)}},remove:function(){this.elm.remove()}}),owEditorButton=bkClass.extend({construct:function(a,b,c,d){this.options=c.buttons[b];this.name=b;this.ne=d;this.elm=a;this.margin=(new bkElement("DIV")).setStyle({"float":"left",marginTop:"2px"}).appendTo(a);this.contain=(new bkElement("DIV")).setStyle({width:"20px",height:"20px"}).addClass("buttonContain").appendTo(this.margin);this.border=(new bkElement("DIV")).setStyle({backgroundColor:"#fff",
|
||||
border:"1px solid #efefef"}).appendTo(this.contain);this.button=(new bkElement("DIV")).setStyle({width:"18px",height:"18px",overflow:"hidden",zoom:1,cursor:"pointer"}).addClass("button").setStyle(this.ne.getIcon(b,c)).appendTo(this.border);this.button.addEvent("mouseover",this.hoverOn.closure(this)).addEvent("mouseout",this.hoverOff.closure(this)).addEvent("mousedown",this.mouseClick.closure(this)).noSelect();window.opera||(this.button.onmousedown=this.button.onclick=bkLib.cancelEvent);d.addEvent("selected",
|
||||
this.enable.closure(this)).addEvent("blur",this.disable.closure(this)).addEvent("key",this.key.closure(this));this.disable();this.init()},init:function(){},hide:function(){this.contain.setStyle({display:"none"})},updateState:function(){this.isDisabled?this.setBg():this.isHover?this.setBg("hover"):this.isActive?this.setBg("active"):this.setBg()},setBg:function(a){switch(a){case "hover":var b={border:"1px solid #666",backgroundColor:"#ddd"};break;case "active":b={border:"1px solid #666",backgroundColor:"#ccc"};
|
||||
break;default:b={border:"1px solid #efefef",backgroundColor:"#efefef"}}this.border.setStyle(b).addClass("button-"+a)},checkNodes:function(a){var b=a;do if(this.options.tags&&bkLib.inArray(this.options.tags,b.nodeName))return this.activate(),!0;while(b=b.parentNode&&"owEdit"!=b.className);for(b=$BK(a);3==b.nodeType;)b=$BK(b.parentNode);if(this.options.css)for(itm in this.options.css)if(b.getStyle(itm,this.ne.selectedInstance.instanceDoc)==this.options.css[itm])return this.activate(),!0;this.deactivate();
|
||||
return!1},activate:function(){this.isDisabled||(this.isActive=!0,this.updateState(),this.ne.fireEvent("buttonActivate",this))},deactivate:function(){this.isActive=!1;this.updateState();this.isDisabled||this.ne.fireEvent("buttonDeactivate",this)},enable:function(a,b){this.isDisabled=!1;this.contain.setStyle({opacity:1}).addClass("buttonEnabled");this.updateState();this.checkNodes(b)},disable:function(a,b){this.isDisabled=!0;this.contain.setStyle({opacity:0.6}).removeClass("buttonEnabled");this.updateState()},
|
||||
toggleActive:function(){this.isActive?this.deactivate():this.activate()},hoverOn:function(){this.isDisabled||(this.isHover=!0,this.updateState(),this.ne.fireEvent("buttonOver",this))},hoverOff:function(){this.isHover=!1;this.updateState();this.ne.fireEvent("buttonOut",this)},mouseClick:function(){this.options.command&&(this.ne.owCommand(this.options.command,this.options.commandArgs),this.options.noActive||this.toggleActive());this.ne.fireEvent("buttonClick",this)},key:function(a,b){this.options.key&&
|
||||
(b.ctrlKey&&String.fromCharCode(b.keyCode||b.charCode).toLowerCase()==this.options.key)&&(this.mouseClick(),b.preventDefault&&b.preventDefault())}}),owPlugin=bkClass.extend({construct:function(a,b){this.options=b;this.ne=a;this.ne.addEvent("panel",this.loadPanel.closure(this));this.init()},loadPanel:function(a){var b=this.options.buttons,c;for(c in b)a.addButton(c,this.options);a.reorder()},init:function(){}}),owPaneOptions={},owEditorPane=bkClass.extend({construct:function(a,b,c,d){this.ne=b;this.elm=
|
||||
a;this.pos=a.pos();this.contain=(new bkElement("div")).setStyle({zIndex:"99999",overflow:"hidden",position:"absolute",left:this.pos[0]+"px",top:this.pos[1]+"px"});this.pane=(new bkElement("div")).setStyle({fontSize:"12px",border:"1px solid #ccc",overflow:"hidden",padding:"4px",textAlign:"left",backgroundColor:"#ffffc9"}).addClass("pane").setStyle(c).appendTo(this.contain);d&&!d.options.noClose&&(this.close=(new bkElement("div")).setStyle({"float":"right",height:"16px",width:"16px",cursor:"pointer"}).setStyle(this.ne.getIcon("close",
|
||||
owPaneOptions)).addEvent("mousedown",d.removePane.closure(this)).appendTo(this.pane));this.contain.noSelect().appendTo(document.body);this.position();this.init()},init:function(){},position:function(){if(this.ne.owPanel){var a=this.ne.owPanel.elm,a=a.pos()[0]+parseInt(a.getStyle("width"))-(parseInt(this.pane.getStyle("width"))+8);a<this.pos[0]&&this.contain.setStyle({left:a+"px"})}},toggle:function(){this.isVisible=!this.isVisible;this.contain.setStyle({display:this.isVisible?"block":"none"})},remove:function(){this.contain&&
|
||||
(this.contain.remove(),this.contain=null)},append:function(a){a.appendTo(this.pane)},setContent:function(a){this.pane.setContent(a)}}),owEditorAdvancedButton=owEditorButton.extend({init:function(){this.ne.addEvent("selected",this.removePane.closure(this)).addEvent("blur",this.removePane.closure(this))},mouseClick:function(){this.isDisabled||(this.pane&&this.pane.pane?this.removePane():(this.pane=new owEditorPane(this.contain,this.ne,{width:this.width||"270px",backgroundColor:"#fff"},this),this.addPane(),
|
||||
this.ne.selectedInstance.saveRng()))},addForm:function(a,b){this.form=(new bkElement("form")).addEvent("submit",this.submit.closureListener(this));this.pane.append(this.form);this.inputs={};for(itm in a){var c=a[itm],d="";b&&(d=b.getAttribute(itm));d||(d=c.value||"");var f=a[itm].type;if("title"==f)(new bkElement("div")).setContent(c.txt).setStyle({fontSize:"14px",fontWeight:"bold",padding:"0px",margin:"2px 0"}).appendTo(this.form);else{var e=(new bkElement("div")).setStyle({overflow:"hidden",clear:"both"}).appendTo(this.form);
|
||||
c.txt&&(new bkElement("label")).setAttributes({"for":itm}).setContent(c.txt).setStyle({margin:"2px 4px",fontSize:"13px",width:"50px",lineHeight:"20px",textAlign:"right","float":"left"}).appendTo(e);switch(f){case "text":this.inputs[itm]=(new bkElement("input")).setAttributes({id:itm,value:d,type:"text"}).setStyle({margin:"2px 0",fontSize:"13px","float":"left",height:"20px",border:"1px solid #ccc",overflow:"hidden"}).setStyle(c.style).appendTo(e);break;case "select":this.inputs[itm]=(new bkElement("select")).setAttributes({id:itm}).setStyle({border:"1px solid #ccc",
|
||||
"float":"left",margin:"2px 0"}).appendTo(e);for(opt in c.options)(new bkElement("option")).setAttributes({value:opt,selected:opt==d?"selected":""}).setContent(c.options[opt]).appendTo(this.inputs[itm]);break;case "content":this.inputs[itm]=(new bkElement("textarea")).setAttributes({id:itm}).setStyle({border:"1px solid #ccc","float":"left"}).setStyle(c.style).appendTo(e),this.inputs[itm].value=d}}}(new bkElement("input")).setAttributes({type:"submit"}).setStyle({backgroundColor:"#efefef",border:"1px solid #ccc",
|
||||
margin:"3px 0","float":"left",clear:"both"}).appendTo(this.form);this.form.onsubmit=bkLib.cancelEvent},submit:function(){},findElm:function(a,b,c){a=this.ne.selectedInstance.getElm().getElementsByTagName(a);for(var d=0;d<a.length;d++)if(a[d].getAttribute(b)==c)return $BK(a[d])},removePane:function(){this.pane&&(this.pane.remove(),this.pane=null,this.ne.selectedInstance.restoreRng())}}),owButtonTips=bkClass.extend({construct:function(a){this.ne=a;a.addEvent("buttonOver",this.show.closure(this)).addEvent("buttonOut",
|
||||
this.hide.closure(this))},show:function(a){this.timer=setTimeout(this.create.closure(this,a),400)},create:function(a){this.timer=null;this.pane||(this.pane=new owEditorPane(a.button,this.ne,{fontSize:"12px",marginTop:"5px"}),this.pane.setContent(a.options.name))},hide:function(a){this.timer&&clearTimeout(this.timer);this.pane&&(this.pane=this.pane.remove())}});owEditors.registerPlugin(owButtonTips);
|
||||
var owSelectOptions={buttons:{fontSize:{name:__("Taille"),type:"owEditorFontSizeSelect",command:"fontsize"},fontFamily:{name:__("Famille"),type:"owEditorFontFamilySelect",command:"fontname"},fontFormat:{name:__("Format"),type:"owEditorFontFormatSelect",command:"formatBlock"}}},owEditorSelect=bkClass.extend({construct:function(a,b,c,d){this.options=c.buttons[b];this.elm=a;this.ne=d;this.name=b;this.selOptions=[];this.margin=(new bkElement("div")).setStyle({"float":"left",margin:"2px 1px 0 1px"}).appendTo(this.elm);
|
||||
this.contain=(new bkElement("div")).setStyle({width:"90px",height:"20px",cursor:"pointer",overflow:"hidden"}).addClass("selectContain").addEvent("click",this.toggle.closure(this)).appendTo(this.margin);this.items=(new bkElement("div")).setStyle({overflow:"hidden",zoom:1,border:"1px solid #ccc",paddingLeft:"3px",backgroundColor:"#fff"}).appendTo(this.contain);this.control=(new bkElement("div")).setStyle({overflow:"hidden","float":"right",height:"18px",width:"16px"}).addClass("selectControl").setStyle(this.ne.getIcon("arrow",
|
||||
c)).appendTo(this.items);this.txt=(new bkElement("div")).setStyle({overflow:"hidden","float":"left",width:"66px",height:"14px",marginTop:"1px",fontFamily:"sans-serif",textAlign:"center",fontSize:"12px"}).addClass("selectTxt").appendTo(this.items);window.opera||(this.contain.onmousedown=this.control.onmousedown=this.txt.onmousedown=bkLib.cancelEvent);this.margin.noSelect();this.ne.addEvent("selected",this.enable.closure(this)).addEvent("blur",this.disable.closure(this));this.disable();this.init()},
|
||||
disable:function(){this.isDisabled=!0;this.close();this.contain.setStyle({opacity:0.6})},enable:function(a){this.isDisabled=!1;this.close();this.contain.setStyle({opacity:1})},setDisplay:function(a){this.txt.setContent(a)},toggle:function(){this.isDisabled||(this.pane?this.close():this.open())},open:function(){this.pane=new owEditorPane(this.items,this.ne,{width:"88px",padding:"0px",borderTop:0,borderLeft:"1px solid #ccc",borderRight:"1px solid #ccc",borderBottom:"0px",backgroundColor:"#fff"});for(var a=
|
||||
0;a<this.selOptions.length;a++){var b=this.selOptions[a],c=(new bkElement("div")).setStyle({overflow:"hidden",borderBottom:"1px solid #ccc",width:"88px",textAlign:"left",overflow:"hidden",cursor:"pointer"}),d=(new bkElement("div")).setStyle({padding:"0px 4px"}).setContent(b[1]).appendTo(c).noSelect();d.addEvent("click",this.update.closure(this,b[0])).addEvent("mouseover",this.over.closure(this,d)).addEvent("mouseout",this.out.closure(this,d)).setAttributes("id",b[0]);this.pane.append(c);window.opera||
|
||||
(d.onmousedown=bkLib.cancelEvent)}},close:function(){this.pane&&(this.pane=this.pane.remove())},over:function(a){a.setStyle({backgroundColor:"#ccc"})},out:function(a){a.setStyle({backgroundColor:"#fff"})},add:function(a,b){this.selOptions.push([a,b])},update:function(a){this.ne.owCommand(this.options.command,a);this.close()}}),owEditorFontSizeSelect=owEditorSelect.extend({sel:{1:"1 (8pt)",2:"2 (10pt)",3:"3 (12pt)",4:"4 (14pt)",5:"5 (18pt)",6:"6 (24pt)"},init:function(){this.setDisplay("Taille...");
|
||||
for(itm in this.sel)this.add(itm,'<font size="'+itm+'">'+this.sel[itm]+"</font>")}}),owEditorFontFamilySelect=owEditorSelect.extend({sel:{arial:"Arial","comic sans ms":"Comic Sans","courier new":"Courier New",georgia:"Georgia",helvetica:"Helvetica",impact:"Impact","times new roman":"Times","trebuchet ms":"Trebuchet",verdana:"Verdana"},init:function(){this.setDisplay("Famille...");for(itm in this.sel)this.add(itm,'<font face="'+itm+'">'+this.sel[itm]+"</font>")}}),owEditorFontFormatSelect=owEditorSelect.extend({sel:{p:"Paragraph",
|
||||
pre:"Pre",h6:"Heading 6",h5:"Heading 5",h4:"Heading 4",h3:"Heading 3",h2:"Heading 2",h1:"Heading 1"},init:function(){this.setDisplay("Format...");for(itm in this.sel){var a=itm.toUpperCase();this.add("<"+a+">","<"+itm+' style="padding: 0px; margin: 0px;">'+this.sel[itm]+"</"+a+">")}}});owEditors.registerPlugin(owPlugin,owSelectOptions);
|
||||
var owLinkOptions={buttons:{link:{name:"Ajouter un lien",type:"owLinkButton",tags:["A"]},unlink:{name:"Retirer un lien",command:"unlink",noActive:!0}}},owLinkButton=owEditorAdvancedButton.extend({addPane:function(){this.ln=this.ne.selectedInstance.selElm().parentTag("A");this.addForm({"":{type:"title",txt:"Add/Edit Link"},href:{type:"text",txt:"URL",value:"http://",style:{width:"150px"}},title:{type:"text",txt:"Title"},target:{type:"select",txt:"Open In",options:{"":"Current Window",_blank:"New Window"},
|
||||
style:{width:"100px"}}},this.ln)},submit:function(a){a=this.inputs.href.value;if("http://"==a||""==a)return alert("You must enter a URL to Create a Link"),!1;this.removePane();this.ln||(this.ne.owCommand("createlink","javascript:owTemp();"),this.ln=this.findElm("A","href","javascript:owTemp();"));this.ln&&this.ln.setAttributes({href:this.inputs.href.value,title:this.inputs.title.value,target:this.inputs.target.options[this.inputs.target.selectedIndex].value})}});
|
||||
owEditors.registerPlugin(owPlugin,owLinkOptions);
|
||||
var owColorOptions={buttons:{forecolor:{name:__("Changer couleur du texte"),type:"owEditorColorButton",noClose:!0},bgcolor:{name:__("Changer couleur du fond de texte"),type:"owEditorBgColorButton",noClose:!0}}},owEditorColorButton=owEditorAdvancedButton.extend({addPane:function(){var a={0:"00",1:"33",2:"66",3:"99",4:"CC",5:"FF"},b=(new bkElement("DIV")).setStyle({width:"270px"}),c;for(c in a)for(var d in a)for(var f in a){var e="#"+a[c]+a[f]+a[d],g=(new bkElement("DIV")).setStyle({cursor:"pointer",
|
||||
height:"15px","float":"left"}).appendTo(b),l=(new bkElement("DIV")).setStyle({border:"2px solid "+e}).appendTo(g),e=(new bkElement("DIV")).setStyle({backgroundColor:e,overflow:"hidden",width:"11px",height:"11px"}).addEvent("click",this.colorSelect.closure(this,e)).addEvent("mouseover",this.on.closure(this,l)).addEvent("mouseout",this.off.closure(this,l,e)).appendTo(l);window.opera||(g.onmousedown=e.onmousedown=bkLib.cancelEvent)}this.pane.append(b.noSelect())},colorSelect:function(a){this.ne.owCommand("foreColor",
|
||||
a);this.removePane()},on:function(a){a.setStyle({border:"2px solid #000"})},off:function(a,b){a.setStyle({border:"2px solid "+b})}}),owEditorBgColorButton=owEditorColorButton.extend({colorSelect:function(a){this.ne.owCommand("hiliteColor",a);this.removePane()}});owEditors.registerPlugin(owPlugin,owColorOptions);
|
||||
var owImageOptions={buttons:{image:{name:"Ajouter une image",type:"owImageButton",tags:["IMG"]}}},owImageButton=owEditorAdvancedButton.extend({addPane:function(){this.im=this.ne.selectedInstance.selElm().parentTag("IMG");this.addForm({"":{type:"title",txt:"Ajouter/Editer une image"},src:{type:"text",txt:"URL",value:"http://",style:{width:"150px"}},alt:{type:"text",txt:"Desc.",style:{width:"100px"}},align:{type:"select",txt:"Align.",options:{none:"Basique",left:"Gauche",right:"Droite"}}},this.im)},
|
||||
submit:function(a){a=this.inputs.src.value;if(""==a||"http://"==a)return alert("You must enter a Image URL to insert"),!1;this.removePane();this.im||(this.ne.owCommand("insertImage","javascript:owImTemp();"),this.im=this.findElm("IMG","src","javascript:owImTemp();"));this.im&&this.im.setAttributes({src:this.inputs.src.value,alt:this.inputs.alt.value,align:this.inputs.align.value})}});owEditors.registerPlugin(owPlugin,owImageOptions);
|
||||
var owSaveOptions={buttons:{save:{name:__("Sauvegarder le contenu"),type:"owEditorSaveButton"}}},owEditorSaveButton=owEditorButton.extend({init:function(){this.ne.options.onSave||this.margin.setStyle({display:"none"})},mouseClick:function(){var a=this.ne.options.onSave,b=this.ne.selectedInstance;a(b.getContent(),b.elm.id,b)}});owEditors.registerPlugin(owPlugin,owSaveOptions);
|
||||
var owUploadOptions={buttons:{upload:{name:"Uploader une image",type:"owUploadButton"}}},owUploadButton=owEditorAdvancedButton.extend({owURI:"owEditor/upload.php",addPane:function(){this.im=this.ne.selectedInstance.selElm().parentTag("IMG");this.myID=Math.round(Math.random()*Math.pow(10,15));this.requestInterval=1E3;this.uri=this.ne.options.uploadURI||this.owURI;owUploadButton.lastPlugin=this;this.myFrame=(new bkElement("iframe")).setAttributes({height:"100px",frameBorder:0,scrolling:"no"}).setStyle({border:0}).appendTo(this.pane.pane);
|
||||
this.progressWrapper=(new bkElement("div")).setStyle({display:"none",height:"20px",border:"1px solid #ccc"}).appendTo(this.pane.pane);this.progress=(new bkElement("div")).setStyle({width:"0%",height:"20px",backgroundColor:"#ccc"}).setContent(" ").appendTo(this.progressWrapper);setTimeout(this.addForm.closure(this),50)},addForm:function(){var a=this.myDoc=this.myFrame.contentWindow.document;a.open();a.write("<html><body>");a.write('<form method="post" action="'+this.uri+"?id="+this.myID+'" enctype="multipart/form-data">');
|
||||
a.write('<input type="hidden" name="APC_UPLOAD_PROGRESS" value="'+this.myID+'" />');a.write('<div style="font-size: 14px; font-weight: bold; padding-top: 5px;">Inserer une image</div>');a.write('<input name="owImage" type="file" style="margin-top: 10px;" />');a.write("</form>");a.write("</body></html>");a.close();this.myBody=a.body;this.myForm=$BK(this.myBody.getElementsByTagName("form")[0]);this.myInput=$BK(this.myBody.getElementsByTagName("input")[1]).addEvent("change",this.startUpload.closure(this));
|
||||
this.myStatus=(new bkElement("div",this.myDoc)).setStyle({textAlign:"center",fontSize:"14px"}).appendTo(this.myBody)},startUpload:function(){this.myForm.setStyle({display:"none"});this.myStatus.setContent('<img src="owEditor/loader.gif" style="float: right; margin-right: 40px;" /><strong>Upload en cours...</strong><br />Patientez...');this.myForm.submit();setTimeout(this.makeRequest.closure(this),this.requestInterval)},makeRequest:function(){if(this.pane&&this.pane.pane){owUploadButton.lastPlugin=
|
||||
this;var a=(new bkElement("script")).setAttributes({type:"text/javascript",src:this.uri+"?check="+this.myID+"&rand="+Math.round(Math.random()*Math.pow(10,15))}).addEvent("load",function(){a.parentNode.removeChild(a)}).appendTo(document.getElementsByTagName("head")[0]);this.requestInterval&&setTimeout(this.makeRequest.closure(this),this.requestInterval)}},setProgress:function(a){this.progressWrapper.setStyle({display:"block"});this.progress.setStyle({width:a+"%"})},update:function(a){if(!1==a)this.progressWrapper.setStyle({display:"none"});
|
||||
else if(a.url){this.setProgress(100);this.requestInterval=!1;this.im||(this.ne.selectedInstance.restoreRng(),this.ne.owCommand("insertImage","javascript:owImTemp();"),this.im=this.findElm("IMG","src","javascript:owImTemp();"));var b=parseInt(this.ne.selectedInstance.elm.getStyle("width"));this.im&&this.im.setAttributes({src:a.url,width:b&&a.width?Math.min(b,a.width):""});this.removePane()}else if(a.error)this.requestInterval=!1,this.setProgress(100),alert("There was an error uploading your image ("+
|
||||
a.error+")."),this.removePane();else if(a.noprogress){if(this.progressWrapper.setStyle({display:"none"}),-1==this.uri.indexOf("http:")||-1!=this.uri.indexOf(window.location.host))this.requestInterval=!1}else this.setProgress(Math.round(75*(a.current/a.total))),a.interval&&(this.requestInterval=a.interval)}});owUploadButton.statusCb=function(a){owUploadButton.lastPlugin.update(a)};owEditors.registerPlugin(owPlugin,owUploadOptions);
|
||||
var owXHTML=bkClass.extend({stripAttributes:["_moz_dirty","_moz_resizing","_extended"],noShort:["style","title","script","textarea","a"],cssReplace:{"font-weight:bold;":"strong","font-style:italic;":"em"},sizes:{1:"xx-small",2:"x-small",3:"small",4:"medium",5:"large",6:"x-large"},construct:function(a){this.ne=a;this.ne.options.xhtml&&a.addEvent("get",this.cleanup.closure(this))},cleanup:function(a){var b=a.getElm(),b=this.toXHTML(b);a.content=b},toXHTML:function(a,b,c){var d=c="",f="",e=a.nodeType,
|
||||
g=a.nodeName.toLowerCase(),l=a.hasChildNodes&&a.hasChildNodes(),n=[];switch(e){case 1:var p=a.attributes;switch(g){case "b":g="strong";break;case "i":g="em";break;case "font":g="span"}if(b){for(e=0;e<p.length;e++){var k=p[e],m=k.nodeName.toLowerCase(),h=k.nodeValue;if(k.specified&&h&&!bkLib.inArray(this.stripAttributes,m)&&"function"!=typeof h){switch(m){case "style":k=h.replace(/ /g,"");for(itm in this.cssReplace)-1!=k.indexOf(itm)&&(n.push(this.cssReplace[itm]),k=k.replace(itm,""));f+=k;h="";break;
|
||||
case "class":h=h.replace("Apple-style-span","");break;case "size":f+="font-size:"+this.sizes[h]+";",h=""}h&&(d+=" "+m+'="'+h+'"')}}f&&(d+=' style="'+f+'"');for(e=0;e<n.length;e++)c+="<"+n[e]+">";""==d&&"span"==g&&(b=!1);b&&(c+="<"+g,"br /"!=g&&(c+=d))}if(l||bkLib.inArray(this.noShort,m))for(b&&(c+=">"),e=0;e<a.childNodes.length;e++)(m=this.toXHTML(a.childNodes[e],!0,!0))&&(c+=m);else b&&(c+=" />");b&&l&&(c+="</"+g+">");for(e=0;e<n.length;e++)c+="</"+n[e]+">";break;case 3:c+=a.nodeValue}return c}});
|
||||
owEditors.registerPlugin(owXHTML);
|
||||
var owBBCode=bkClass.extend({construct:function(a){this.ne=a;if(this.ne.options.bbCode)for(itm in a.addEvent("get",this.bbGet.closure(this)),a.addEvent("set",this.bbSet.closure(this)),a=this.ne.loadedPlugins,a)a[itm].toXHTML&&(this.xhtml=a[itm])},bbGet:function(a){var b=this.xhtml.toXHTML(a.getElm());a.content=this.toBBCode(b)},bbSet:function(a){a.content=this.fromBBCode(a.content)},toBBCode:function(a){function b(b,d){a=a.replace(b,d)}b(/\n/gi,"");b(/<strong>(.*?)<\/strong>/gi,"[b]$1[/b]");b(/<em>(.*?)<\/em>/gi,
|
||||
"[i]$1[/i]");b(/<span.*?style="text-decoration:underline;">(.*?)<\/span>/gi,"[u]$1[/u]");b(/<ul>(.*?)<\/ul>/gi,"[list]$1[/list]");b(/<li>(.*?)<\/li>/gi,"[*]$1[]");b(/<ol>(.*?)<\/ol>/gi,"[list=1]$1[/list]");b(/<img.*?src="(.*?)".*?>/gi,"[img]$1[/img]");b(/<a.*?href="(.*?)".*?>(.*?)<\/a>/gi,"[url=$1]$2[/url]");b(/<br.*?>/gi,"\n");b(/<.*?>.*?<\/.*?>/gi,"");return a},fromBBCode:function(a){function b(b,d){a=a.replace(b,d)}b(/\[b\](.*?)\[\/b\]/gi,"<strong>$1</strong>");b(/\[i\](.*?)\[\/i\]/gi,"<em>$1</em>");
|
||||
b(/\[u\](.*?)\[\/u\]/gi,'<span style="text-decoration:underline;">$1</span>');b(/\[list\](.*?)\[\/list\]/gi,"<ul>$1</ul>");b(/\[list=1\](.*?)\[\/list\]/gi,"<ol>$1</ol>");b(/\[\*\](.*?)\[\/\*\]/gi,"<li>$1</li>");b(/\[img\](.*?)\[\/img\]/gi,'<img src="$1" />');b(/\[url=(.*?)\](.*?)\[\/url\]/gi,'<a href="$1">$2</a>');b(/\n/gi,"<br />");return a}});owEditors.registerPlugin(owBBCode);
|
||||
var owEditor=owEditor.extend({floatingPanel:function(){this.floating=(new bkElement("DIV")).setStyle({position:"absolute",top:"-1000px"}).appendTo(document.body);this.addEvent("focus",this.reposition.closure(this)).addEvent("blur",this.hide.closure(this));this.setPanel(this.floating)},reposition:function(){var a=this.selectedInstance.e;this.floating.setStyle({width:(parseInt(a.getStyle("width"))||a.clientWidth)+"px"});var b=a.offsetTop-this.floating.offsetHeight;0>b&&(b=a.offsetTop+a.offsetHeight);
|
||||
this.floating.setStyle({top:b+"px",left:a.offsetLeft+"px",display:"block"})},hide:function(){this.floating.setStyle({top:"-1000px"})}}),owCodeOptions={buttons:{xhtml:{name:"Modifier le code source HTML",type:"owCodeButton"}}},owCodeButton=owEditorAdvancedButton.extend({width:"350px",addPane:function(){this.addForm({"":{type:"title",txt:"Edit HTML"},code:{type:"content",value:this.ne.selectedInstance.getContent(),style:{width:"340px",height:"200px"}}})},submit:function(a){this.ne.selectedInstance.setContent(this.inputs.code.value);
|
||||
this.removePane()}});owEditors.registerPlugin(owPlugin,owCodeOptions);
|
||||
|
|
@ -1,162 +0,0 @@
|
|||
<?php
|
||||
define('OWUPLOAD_PATH', "../../data/images");
|
||||
define('OWUPLOAD_URI', "../../data/images");
|
||||
|
||||
$owupload_allowed_extensions = array('jpg','jpeg','png','gif','bmp');
|
||||
$rfc1867 = function_exists('apc_fetch') && ini_get('apc.rfc1867');
|
||||
|
||||
$id = $_POST['APC_UPLOAD_PROGRESS'];
|
||||
if(empty($id)) $id = $_GET['id'];
|
||||
|
||||
if($_SERVER['REQUEST_METHOD']=='POST')
|
||||
{
|
||||
$file = $_FILES['owImage'];
|
||||
$image = $file['tmp_name'];
|
||||
|
||||
$max_upload_size = ini_max_upload_size();
|
||||
$ext = strtolower(substr(strrchr($file['name'], '.'), 1));
|
||||
@$size = getimagesize($image);
|
||||
$filename = $id.'.'.$ext;
|
||||
$path = OWUPLOAD_PATH.'/'.$filename;
|
||||
|
||||
if(!move_uploaded_file($image, $path)) {
|
||||
owupload_error('Impossible de déplacer le fichier.');
|
||||
}
|
||||
|
||||
if($rfc1867) {
|
||||
$status = apc_fetch('upload_'.$id);
|
||||
}
|
||||
if(!$status) {
|
||||
$status = array();
|
||||
}
|
||||
$status['done'] = 1;
|
||||
$status['width'] = $size[0];
|
||||
$status['url'] = owupload_file_uri($filename);
|
||||
|
||||
if($rfc1867) {
|
||||
apc_store('upload_'.$id, $status);
|
||||
}
|
||||
|
||||
owupload_output($status, $rfc1867);
|
||||
exit;
|
||||
}
|
||||
else if(isset($_GET['check']))
|
||||
{
|
||||
$check = $_GET['check'];
|
||||
|
||||
if($rfc1867) {
|
||||
$status = apc_fetch('upload_'.$check);
|
||||
|
||||
if($status['total'] > 500000 && $status['current']/$status['total'] < 0.9 ) { // Large file and we are < 90% complete
|
||||
$status['interval'] = 3000;
|
||||
} else if($status['total'] > 200000 && $status['current']/$status['total'] < 0.8 ) { // Is this a largeish file and we are < 80% complete
|
||||
$status['interval'] = 2000;
|
||||
} else {
|
||||
$status['interval'] = 1000;
|
||||
}
|
||||
|
||||
owupload_output($status);
|
||||
} else {
|
||||
$status = array();
|
||||
$status['noprogress'] = true;
|
||||
foreach($owupload_allowed_extensions as $e) {
|
||||
if(file_exists(OWUPLOAD_PATH.'/'.$check.'.'.$e)) {
|
||||
$ext = $e;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if($ext) {
|
||||
$status['url'] = owupload_file_uri($check.'.'.$ext);
|
||||
}
|
||||
owupload_output($status);
|
||||
}
|
||||
}
|
||||
|
||||
// Display error
|
||||
function owupload_error($msg)
|
||||
{
|
||||
echo owupload_output(array('error' => $msg));
|
||||
}
|
||||
|
||||
function owupload_output($status, $showLoadingMsg = false)
|
||||
{
|
||||
$script = '
|
||||
try
|
||||
{
|
||||
'.(($_SERVER['REQUEST_METHOD']=='POST') ? 'top.' : '').'owUploadButton.statusCb('.json_encode($status).');
|
||||
} catch(e) { alert(e.message); }
|
||||
';
|
||||
|
||||
if($_SERVER['REQUEST_METHOD']=='POST')
|
||||
{
|
||||
echo '<script>'.$script.'</script>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $script;
|
||||
}
|
||||
|
||||
if($_SERVER['REQUEST_METHOD']=='POST' && $showLoadingMsg)
|
||||
{
|
||||
|
||||
echo
|
||||
<<<END
|
||||
<html><body>
|
||||
<div id="uploadingMessage" style="text-align: center; font-size: 14px;">
|
||||
<img src="owEditor/loader.gif" style="float: right; margin-right: 40px;" />
|
||||
<strong>Upload en cours...</strong><br />
|
||||
</div>
|
||||
</body></html>
|
||||
END;
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
function owupload_file_uri($filename)
|
||||
{
|
||||
$path = $_SERVER['PHP_SELF'];
|
||||
$file = basename ($path);
|
||||
if($_SERVER['SERVER_PORT']!=80) $base = str_replace($file,"", $_SERVER['SERVER_NAME'].':'.$_SERVER['SERVER_PORT'].$_SERVER['SCRIPT_NAME']);
|
||||
else $base = str_replace($file,"", $_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME']);
|
||||
$base = str_replace('/admin/owEditor/','', $base);
|
||||
//$folder = "http://".$base."/data/images"; // => 127*/.../*images
|
||||
$folder = "../../data/images"; // => 127*/.../*images
|
||||
return $folder.'/'.$filename;
|
||||
}
|
||||
|
||||
function ini_max_upload_size()
|
||||
{
|
||||
$post_size = ini_get('post_max_size');
|
||||
$upload_size = ini_get('upload_max_filesize');
|
||||
if(!$post_size) $post_size = '8M';
|
||||
if(!$upload_size) $upload_size = '2M';
|
||||
|
||||
return min( ini_bytes_from_string($post_size), ini_bytes_from_string($upload_size) );
|
||||
}
|
||||
|
||||
function ini_bytes_from_string($val)
|
||||
{
|
||||
$val = trim($val);
|
||||
$last = strtolower($val[strlen($val)-1]);
|
||||
switch($last) {
|
||||
case 'g':
|
||||
$val *= 1024;
|
||||
case 'm':
|
||||
$val *= 1024;
|
||||
case 'k':
|
||||
$val *= 1024;
|
||||
}
|
||||
return $val;
|
||||
}
|
||||
|
||||
function bytes_to_readable( $bytes )
|
||||
{
|
||||
if ($bytes<=0)
|
||||
return '0 Byte';
|
||||
|
||||
$convention=1000; //[1000->10^x|1024->2^x]
|
||||
$s=array('B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB');
|
||||
$e=floor(log($bytes,$convention));
|
||||
return round($bytes/pow($convention,$e),2).' '.$s[$e];
|
||||
}
|
||||
?>
|
||||
266
admin/pell/pell.min.js
vendored
Normal file
266
admin/pell/pell.min.js
vendored
Normal file
|
|
@ -0,0 +1,266 @@
|
|||
(function (global, factory) {
|
||||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
||||
typeof define === 'function' && define.amd ? define(factory) :
|
||||
(global = global || self, global.pell = factory());
|
||||
}(this, function () { 'use strict';
|
||||
|
||||
function _defineProperty(obj, key, value) {
|
||||
if (key in obj) {
|
||||
Object.defineProperty(obj, key, {
|
||||
value: value,
|
||||
enumerable: true,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
} else {
|
||||
obj[key] = value;
|
||||
}
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
function _objectSpread(target) {
|
||||
for (var i = 1; i < arguments.length; i++) {
|
||||
var source = arguments[i] != null ? arguments[i] : {};
|
||||
var ownKeys = Object.keys(source);
|
||||
|
||||
if (typeof Object.getOwnPropertySymbols === 'function') {
|
||||
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
||||
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
||||
}));
|
||||
}
|
||||
|
||||
ownKeys.forEach(function (key) {
|
||||
_defineProperty(target, key, source[key]);
|
||||
});
|
||||
}
|
||||
|
||||
return target;
|
||||
}
|
||||
|
||||
var addEventListener = function addEventListener(parent, type, listener) {
|
||||
return parent.addEventListener(type, listener);
|
||||
};
|
||||
var appendChild = function appendChild(parent, child) {
|
||||
return parent.appendChild(child);
|
||||
};
|
||||
var createElement = function createElement(tag) {
|
||||
return document.createElement(tag);
|
||||
};
|
||||
var defaultParagraphSeparatorString = 'defaultParagraphSeparator';
|
||||
var exec = function exec(command) {
|
||||
var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
||||
return document.execCommand(command, false, value);
|
||||
};
|
||||
var formatBlock = 'formatBlock';
|
||||
var queryCommandState = function queryCommandState(command) {
|
||||
return document.queryCommandState(command);
|
||||
};
|
||||
var queryCommandValue = function queryCommandValue(command) {
|
||||
return document.queryCommandValue(command);
|
||||
};
|
||||
|
||||
var bold = {
|
||||
icon: '<b>B</b>',
|
||||
result: function result() {
|
||||
return exec('bold');
|
||||
},
|
||||
state: function state() {
|
||||
return queryCommandState('bold');
|
||||
},
|
||||
title: 'Bold'
|
||||
};
|
||||
var code = {
|
||||
icon: '</>',
|
||||
result: function result() {
|
||||
return exec(formatBlock, '<pre>');
|
||||
},
|
||||
title: 'Code'
|
||||
};
|
||||
var heading1 = {
|
||||
icon: '<b>H<sub>1</sub></b>',
|
||||
result: function result() {
|
||||
return exec(formatBlock, '<h1>');
|
||||
},
|
||||
title: 'Heading 1'
|
||||
};
|
||||
var heading2 = {
|
||||
icon: '<b>H<sub>2</sub></b>',
|
||||
result: function result() {
|
||||
return exec(formatBlock, '<h2>');
|
||||
},
|
||||
title: 'Heading 2'
|
||||
};
|
||||
var image = {
|
||||
icon: '📷',
|
||||
result: function result() {
|
||||
var url = window.prompt('Enter the image URL');
|
||||
if (url) exec('insertImage', url);
|
||||
},
|
||||
title: 'Image'
|
||||
};
|
||||
var italic = {
|
||||
icon: '<i>I</i>',
|
||||
result: function result() {
|
||||
return exec('italic');
|
||||
},
|
||||
state: function state() {
|
||||
return queryCommandState('italic');
|
||||
},
|
||||
title: 'Italic'
|
||||
};
|
||||
var line = {
|
||||
icon: '―',
|
||||
result: function result() {
|
||||
return exec('insertHorizontalRule');
|
||||
},
|
||||
title: 'Horizontal Line'
|
||||
};
|
||||
var link = {
|
||||
icon: '🔗',
|
||||
result: function result() {
|
||||
var url = window.prompt('Enter the link URL');
|
||||
if (url) exec('createLink', url);
|
||||
},
|
||||
title: 'Link'
|
||||
};
|
||||
var olist = {
|
||||
icon: '#',
|
||||
result: function result() {
|
||||
return exec('insertOrderedList');
|
||||
},
|
||||
title: 'Ordered List'
|
||||
};
|
||||
var paragraph = {
|
||||
icon: '¶',
|
||||
result: function result() {
|
||||
return exec(formatBlock, '<p>');
|
||||
},
|
||||
title: 'Paragraph'
|
||||
};
|
||||
var quote = {
|
||||
icon: '“ ”',
|
||||
result: function result() {
|
||||
return exec(formatBlock, '<blockquote>');
|
||||
},
|
||||
title: 'Quote'
|
||||
};
|
||||
var strikethrough = {
|
||||
icon: '<strike>S</strike>',
|
||||
result: function result() {
|
||||
return exec('strikeThrough');
|
||||
},
|
||||
state: function state() {
|
||||
return queryCommandState('strikeThrough');
|
||||
},
|
||||
title: 'Strike-through'
|
||||
};
|
||||
var ulist = {
|
||||
icon: '•',
|
||||
result: function result() {
|
||||
return exec('insertUnorderedList');
|
||||
},
|
||||
title: 'Unordered List'
|
||||
};
|
||||
var underline = {
|
||||
icon: '<u>U</u>',
|
||||
result: function result() {
|
||||
return exec('underline');
|
||||
},
|
||||
state: function state() {
|
||||
return queryCommandState('underline');
|
||||
},
|
||||
title: 'Underline'
|
||||
};
|
||||
var defaultActions = {
|
||||
bold: bold,
|
||||
code: code,
|
||||
heading1: heading1,
|
||||
heading2: heading2,
|
||||
image: image,
|
||||
italic: italic,
|
||||
line: line,
|
||||
link: link,
|
||||
olist: olist,
|
||||
paragraph: paragraph,
|
||||
quote: quote,
|
||||
strikethrough: strikethrough,
|
||||
ulist: ulist,
|
||||
underline: underline
|
||||
};
|
||||
|
||||
var defaultClasses = {
|
||||
actionbar: 'pell-actionbar',
|
||||
button: 'pell-button',
|
||||
content: 'pell-content',
|
||||
selected: 'pell-button-selected'
|
||||
};
|
||||
var init = function init(settings) {
|
||||
var actions = settings.actions ? settings.actions.map(function (action) {
|
||||
if (typeof action === 'string') return defaultActions[action];else if (defaultActions[action.name]) return _objectSpread({}, defaultActions[action.name], action);
|
||||
return action;
|
||||
}) : Object.keys(defaultActions).map(function (action) {
|
||||
return defaultActions[action];
|
||||
});
|
||||
|
||||
var classes = _objectSpread({}, defaultClasses, settings.classes);
|
||||
|
||||
var defaultParagraphSeparator = settings[defaultParagraphSeparatorString] || 'div';
|
||||
var actionbar = createElement('div');
|
||||
actionbar.className = classes.actionbar;
|
||||
appendChild(settings.element, actionbar);
|
||||
var content = settings.element.content = createElement('div');
|
||||
content.contentEditable = true;
|
||||
content.className = classes.content;
|
||||
content.className = classes.content;
|
||||
content.id = "pell-id";
|
||||
|
||||
content.oninput = function (_ref) {
|
||||
var firstChild = _ref.target.firstChild;
|
||||
if (firstChild && firstChild.nodeType === 3) exec(formatBlock, "<".concat(defaultParagraphSeparator, ">"));else if (content.innerHTML === '<br>') content.innerHTML = '';
|
||||
settings.onChange(content.innerHTML);
|
||||
};
|
||||
|
||||
content.onkeydown = function (event) {
|
||||
if (event.key === 'Enter' && queryCommandValue(formatBlock) === 'blockquote') {
|
||||
setTimeout(function () {
|
||||
return exec(formatBlock, "<".concat(defaultParagraphSeparator, ">"));
|
||||
}, 0);
|
||||
}
|
||||
};
|
||||
|
||||
appendChild(settings.element, content);
|
||||
actions.forEach(function (action) {
|
||||
var button = createElement('button');
|
||||
button.className = classes.button;
|
||||
button.innerHTML = action.icon;
|
||||
button.title = action.title;
|
||||
button.setAttribute('type', 'button');
|
||||
|
||||
button.onclick = function () {
|
||||
return action.result() && content.focus();
|
||||
};
|
||||
|
||||
if (action.state) {
|
||||
var handler = function handler() {
|
||||
return button.classList[action.state() ? 'add' : 'remove'](classes.selected);
|
||||
};
|
||||
|
||||
addEventListener(content, 'keyup', handler);
|
||||
addEventListener(content, 'mouseup', handler);
|
||||
addEventListener(button, 'click', handler);
|
||||
}
|
||||
|
||||
appendChild(actionbar, button);
|
||||
});
|
||||
if (settings.styleWithCSS) exec('styleWithCSS');
|
||||
exec(defaultParagraphSeparatorString, defaultParagraphSeparator);
|
||||
return settings.element;
|
||||
};
|
||||
var pell = {
|
||||
init: init
|
||||
};
|
||||
|
||||
return pell;
|
||||
|
||||
}));
|
||||
Loading…
Add table
Add a link
Reference in a new issue