Welcome to TiddlyWiki created by Jeremy Ruston; Copyright © 2004-2007 Jeremy Ruston, Copyright © 2007-2011 UnaMesa Association
/***
| ''Name:''|AccordionMenuPlugin|
| ''Description:''|Turn an unordered list into an accordion style menu.|
| ''Version:''|2.0 (modified from 2.1 for personal use)|
| ''Last Modified:''|30 January 2012 (by ~Secret-HQ)|
| ''Author:''|Saq Imtiaz ([[lewcid@gmail.com|mailto:lewcid@gmail.com]])|
| ''Shadow Tiddlers:''|[[AccordionMenuPlugin_Demo]]<br>[[StyleSheetAccordionMenuPlugin]]|
| ''Requires:''|no additional tiddlers (self-contained)|
| ''Core Version:''|2.2.5|
| ''Source:''|[[http://tiddlywiki.squize.org/#AccordionMenuPlugin|http://tiddlywiki.squize.org/#AccordionMenuPlugin]]<br>[[http://tw.lewcid.org/#AccordionMenuPlugin|http://tw.lewcid.org/#AccordionMenuPlugin]]|
| ''Code Repository:''|[[http://tiddlywiki.squize.org/svn/plugins|http://tiddlywiki.squize.org/svn/plugins]]<br>[[http://tw.lewcid.org/svn/plugins|http://tw.lewcid.org/svn/plugins]]|
| ''License:''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|
***/
/***
!Usage:
* put {{{<<accordion>>}}} on the line after your unordered list
!!Customizing:
* customize the css via the shadow tiddler [[StyleSheetAccordionMenuPlugin]]
* or give the list a custom class by passing the classes as parameters to the macro.
** Eg: {{{<<accordion ClassName1 ClassName2>>}}}
!!Examples:
*[[AccordionMenuPlugin_Demo]]
***/
/***
!Version
***/
//{{{
version.extensions.AccordionMenuPlugin = { major:2, minor:0, revision:0, date:new Date(2007,11,03), source:"http://tiddlywiki.squize.org/#AccordionMenuPlugin" };
//}}}
/***
!!History
|altRows|k
| date|version|changes|h
| 30 January 2012|2.0.0.1|@@color(RED):(~Secret-HQ)@@<br>|
| 3 November 2007|2.0|--|
***/
/***
!Code
***/
//{{{
//!BEGIN-PLUGIN-CODE
config.macros.accordion={
dropchar : "",
handler : function(place,macroName,params,wikifier,paramString,tiddler){
list = findRelated(place.lastChild,"UL","tagName","previousSibling");
if (!list)
return;
addClass(list,"accordion");
if (params.length){
addClass(list,paramString);
}
this.fixLinks(list.childNodes);
},
fixLinks : function(els){
for (var i=0; i<els.length; i++){
if(els[i].tagName.toLowerCase()=="li"){
var link = findRelated(els[i].firstChild,"A","tagName","nextSibling");
if(!link){
var ih = els[i].firstChild.data;
els[i].removeChild(els[i].firstChild);
link = createTiddlyElement(null,"a",null,null,ih+this.dropchar,{href:"javascript:;"});
els[i].insertBefore(link,els[i].firstChild);
}
else{
link.firstChild.data = link.firstChild.data + this.dropchar;
removeClass(link,"tiddlyLinkNonExisting");
}
link.onclick = this.show;
}
}
},
show : function(e){
var list = this.parentNode.parentNode;
var els = list.childNodes;
for (var i=0; i<els.length; i++){
removeClass(els[i],"accordion-active");
}
addClass(this.parentNode,"accordion-active");
}
};
//!END-PLUGIN-CODE
//}}}
/***
!!Styles
***/
//{{{
config.shadowTiddlers["StyleSheetAccordionMenuPlugin"] = "/*{{{*/\n"+
"ul.accordion, ul.accordion li, ul.accordion li ul {margin:0; padding:0; list-style-type:none;text-align:left;}\n"+
"ul.accordion li ul {display:none;}\n"+
"ul.accordion li.accordion-active ul {display:block;}\n"+
"\n"+
"ul.accordion li.accordion-active a {cursor:default;}\n"+
"ul.accordion li.accordion-active ul li a{cursor:pointer;}\n"+
"\n"+
"ul.accordion a {display:block; padding:0.5em;}\n"+
"ul.accordion li a.tiddlyLink, ul.accordion li a.tiddlyLinkNonExisting, ul.accordion li a {font-weight:bold;}\n"+
"ul.accordion li a {background:#182ba1; color:#FFF; border-bottom:1px solid #fff;}\n"+
"ul.accordion li.accordion-active a, ul.accordion li a:hover {background:#00558F;color:#FFF;}\n"+
"\n"+
"ul.accordion li ul li{display:inline-block;overflow:hidden;}\n"+
"ul.accordion li.accordion-active ul li {background:#eff3fa; color:#000; padding:0em;}\n"+
"ul.accordion li.accordion-active ul li div {padding:1em 1.5em; background:#eff3fa;}\n"+
"ul.accordion li.accordion-active ul a{background:#eff3fa; color:#000; padding:0.5em 0.5em 0.5em 1.0em;border:none;}\n"+
"ul.accordion li.accordion-active ul a:hover {background:#e0e8f5; color:#000;}\n" +
"/*}}}*/";
//}}}
//{{{
store.addNotification("StyleSheetAccordionMenuPlugin",refreshStyles);
//}}}
/***
!!Demo (Shadow Tiddler)
***/
//{{{
config.shadowTiddlers["AccordionMenuPlugin_Demo"] = "@@display:none;clear:both;@@"+"\n\n"+"''Creating a navigation menu using the AccordionMenuPlugin is as simple as:''"+"\n"+"# writing a two level unordered list using ~TiddlyWiki syntax"+"\n"+"# and placing {{{<<accordion>>}}} on the line after it."+"\n"+"Example:"+"\n"+"{{{"+"\n"+"* Section 1"+"\n"+"** [[Link1]]"+"\n"+"** [[Link2]]"+"\n"+"** [[Link3]]"+"\n"+"*Section 2"+"\n"+"** [[Link4]]"+"\n"+"** [[Link5]]"+"\n"+"** [[Link6]]"+"\n"+"*Section 3"+"\n"+"**[[Link7]]"+"\n"+"**[[Link8]]"+"\n"+"**[[Link9]]"+"\n"+"<<accordion>>"+"\n"+"}}}"+"\n"+"gives:"+"\n\n"+"* Section 1"+"\n"+"** [[Link1]]"+"\n"+"** [[Link2]]"+"\n"+"** [[Link3]]"+"\n"+"*Section 2"+"\n"+"** [[Link4]]"+"\n"+"** [[Link5]]"+"\n"+"** [[Link6]]"+"\n"+"*Section 3"+"\n"+"**[[Link7]]"+"\n"+"**[[Link8]]"+"\n"+"**[[Link9]]"+"\n"+"<<accordion>>"+"\n\n"+"''The AccordionMenuPlugin was written with navigation menu's in mind but can be put to other uses as well. ''"+"\n"+"By wrapping the content in a DIV, you can have multi-line content as well. Example:"+"\n"+"{{{"+"\n"+"* [[section1]]"+"\n"+"**{{myclass{"+"\n"+"Praesent posuere sodales tortor. Mauris ut erat non lacus semper porta. Mauris enim. "+"\n"+"Phasellus tempor, metus ut dapibus lobortis, leo magna ornare metus, et pellentesque neque massa eget turpis."+"\n"+"Proin nec tellus. Donec aliquet."+"\n"+"Nullam sed leo bibendum justo rutrum rhoncus.}}}"+"\n"+"* section2"+"\n"+"**{{myclass{"+"\n"+"Donec rhoncus sem eget urna."+"\n"+"Aenean tempor dolor vitae nisi."+"\n"+"Donec leo urna, placerat porttitor, auctor ut, volutpat a, purus,"+"\n"+"Etiam eu sapien id nulla malesuada scelerisque."+"\n"+"Maecenas rhoncus, nibh ut aliquam consequat, mi odio luctus sem, eu lobortis dolor neque nec lectus. }}}"+"\n"+"* section3"+"\n"+"**{{myclass{"+"\n"+"Donec rhoncus sem eget urna."+"\n"+"Aenean tempor dolor vitae nisi."+"\n"+"Donec leo urna, placerat porttitor, auctor ut, volutpat a, purus,"+"\n"+"Etiam eu sapien id nulla malesuada scelerisque."+"\n"+"Maecenas rhoncus, nibh ut aliquam consequat, mi odio luctus sem, eu lobortis dolor neque nec lectus. }}}"+"\n"+"}}}"+"\n\n"+"gives you:"+"\n\n"+"* [[section1]]"+"\n"+"**{{myclass{"+"\n"+"Praesent posuere sodales tortor. Mauris ut erat non lacus semper porta. Mauris enim. "+"\n"+"Phasellus tempor, metus ut dapibus lobortis, leo magna ornare metus, et pellentesque neque massa eget turpis."+"\n"+"Proin nec tellus. Donec aliquet."+"\n"+"Nullam sed leo bibendum justo rutrum rhoncus.}}}"+"\n"+"* section2"+"\n"+"**{{myclass{"+"\n"+"Donec rhoncus sem eget urna."+"\n"+"Aenean tempor dolor vitae nisi."+"\n"+"Donec leo urna, placerat porttitor, auctor ut, volutpat a, purus,"+"\n"+"Etiam eu sapien id nulla malesuada scelerisque."+"\n"+"Maecenas rhoncus, nibh ut aliquam consequat, mi odio luctus sem, eu lobortis dolor neque nec lectus. }}}"+"\n"+"* section3"+"\n"+"**{{myclass{"+"\n"+"Donec rhoncus sem eget urna."+"\n"+"Aenean tempor dolor vitae nisi."+"\n"+"Donec leo urna, placerat porttitor, auctor ut, volutpat a, purus,"+"\n"+"Etiam eu sapien id nulla malesuada scelerisque."+"\n"+"Maecenas rhoncus, nibh ut aliquam consequat, mi odio luctus sem, eu lobortis dolor neque nec lectus. }}}"+"\n"+"<<accordion>>";
//}}}
//{{{
version.extensions.ArchivePlugin = {major: 2, minor: 4, revision: 0, date: new Date("Jun 6, 2008")};
config.macros.ArchivePlugin = {};
config.macros.ArchivePlugin.init = function () {
this.archivePath = getWikiPath('notes');
}
// Hijacking the built-in functions
TW21Saver.prototype.externalizeTiddler = function(store,tiddler)
{
try {
var extendedAttributes = "";
var usePre = config.options.chkUsePreForStorage;
store.forEachField(tiddler,
function(tiddler,fieldName,value) {
// don't store stuff from the temp namespace
if(typeof value != "string")
value = "";
if (!fieldName.match(/^temp\./))
extendedAttributes += ' %0="%1"'.format([fieldName,value.escapeLineBreaks().htmlEncode()]);
},true);
var created = tiddler.created.convertToYYYYMMDDHHMM();
var modified = tiddler.modified.convertToYYYYMMDDHHMM();
var vdate = version.date.convertToYYYYMMDDHHMM();
var attributes = tiddler.modifier ? ' modifier="' + tiddler.modifier.htmlEncode() + '"' : "";
attributes += (usePre && modified == created) ? "" : ' modified="' + modified +'"';
attributes += (usePre && created == vdate) ? "" :' created="' + created + '"';
var tags = tiddler.getTags();
if(!usePre || tags)
attributes += ' tags="' + tags.htmlEncode() + '"';
return ('<div %0="%1"%2%3>%4</'+'div>').format([
usePre ? "title" : "tiddler",
tiddler.title.htmlEncode(),
attributes,
extendedAttributes,
usePre ? "\n<pre>" + tiddler.saveMe() + "</pre>\n" : tiddler.escapeLineBreaks().htmlEncode()
]);
} catch (ex) {
throw exceptionText(ex,config.messages.tiddlerSaveError.format([tiddler.title]));
}
};
Tiddler.prototype.saveMe = function() {
if (this.tags.indexOf('Нотаток') != -1) {
// Save tiddler body to a file in the archive folder
if (this.text) {
saveFile(config.macros.ArchivePlugin.archivePath + this.title.filenameEncode(), this.text)
}
return '';
}
else
return this.text.htmlEncode();
}
// This hijack ensures plugins can also be archived
var archivePlugin_getPluginInfo = getPluginInfo;
getPluginInfo = function(tiddler) {
alert(tiddler.title)
tiddler.text = store.getValue(tiddler, 'text');
return archivePlugin_getPluginInfo(tiddler);
}
function readTextFile(file) {
var rawFile = new XMLHttpRequest();
rawFile.open("GET", file, false);
rawFile.onreadystatechange = function ()
{
if(rawFile.readyState === 4)
{
if(rawFile.status === 200 || rawFile.status == 0)
{
var allText = rawFile.responseText;
}
}
}
rawFile.send(null);
return(rawFile.responseText);
}
TiddlyWiki.prototype.getValue = function(tiddler, fieldName) {
var t = this.resolveTiddler(tiddler);
if (!t)
return undefined;
fieldName = fieldName.toLowerCase();
if (t.tags.indexOf('Нотаток')!=-1 && fieldName=='text' && t['text']=='') {
try {
if (!readOnly) {
var tmp = loadFile(config.macros.ArchivePlugin.archivePath + t.title.filenameEncode());
}
else {
var tmp = readTextFile("http://schoolsuncity6.ho.ua/notes/"+t.title.filenameEncode());
}
tmp = (tmp.charCodeAt(0) == 239 ? manualConvertUTF8ToUnicode(tmp) : tmp);
} catch (e) {
return '';
alert("{{{Помилка: неможливо завантажити нотаток '" + config.macros.ArchivePlugin.archivePath + this.created.convertToArchiveName() + t.title.filenameEncode() + '.html' + "'}}}");
}
return tmp;
} else {
var accessor = TiddlyWiki.standardFieldAccess[fieldName];
if (accessor) {
return accessor.get(t);
}
}
return t.fields ? t.fields[fieldName] : undefined;
}
String.prototype.filenameEncode = function() {
return(translit(this)+'.html');
}
function getWikiPath(folderName) {
var originalPath = document.location.toString();
if(originalPath.substr(0,5) != 'file:') {
if(store.tiddlerExists(config.messages.saveInstructions))
story.displayTiddler(null,config.messages.saveInstructions);
return;
}
var localPath = getLocalPath(originalPath);
var backSlash = localPath.lastIndexOf('\\') == -1 ? '/' : '\\';
var dirPathPos = localPath.lastIndexOf(backSlash);
var subPath = localPath.substr(0,dirPathPos) + backSlash + (folderName ? folderName + backSlash : '');
return subPath;
}
// Deleting archive files
TiddlyWiki.prototype.archivePlugin_removeTiddler = TiddlyWiki.prototype.removeTiddler;
TiddlyWiki.prototype.removeTiddler = function(title) {
var tiddler = store.getTiddler(title);
var filePath = config.macros.ArchivePlugin.archivePath + title.filenameEncode();
if (tiddler.tags.indexOf('Нотаток') != -1) ieDeleteFile(filePath);
this.archivePlugin_removeTiddler(title);
}
function ieDeleteFile(filePath) {
// IE Support only
if (!config.browser.isIE) return false;
try {
var fso = new ActiveXObject("Scripting.FileSystemObject");
} catch(ex) {return null;}
try {
var file = fso.GetFile(filePath);
file.Delete();
} catch(ex) {return null;}
return true;
}
//}}}
<<tiddler SetTiddlerBackground with: url("pict/TiddlerBGP.jpg") #0000ff patr title>>
config.commands.closeTiddler.imgLoc = "btn/close.png";
config.commands.deleteTiddler.imgLoc = "btn/delete.png";
config.commands.editTiddler.imgLoc = "btn/edit.png";
//{{{
window.CoolClock = function(canvasId,displayRadius,skinId,showSecondHand) {
return this.init(canvasId,displayRadius,skinId,showSecondHand);
}
CoolClock.config = {
clockTracker: {},
tickDelay: 1000,
longTickDelay: 15000,
defaultRadius: 85,
renderRadius: 100,
defaultSkin: "swissRail",
skins: {
fancy: {
outerBorder: { lineWidth: 5, radius:75, color: "green", alpha: 0.7 },
smallIndicator: { lineWidth: 1, startAt: 65, endAt: 75, color: "black", alpha: 0.4 },
largeIndicator: { lineWidth: 1, startAt: 55, endAt: 75, color: "black", alpha: 0.5 },
hourHand: { lineWidth: 8, startAt: -15, endAt: 50, color: "blue", alpha: 0.7 },
minuteHand: { lineWidth: 7, startAt: -15, endAt: 72, color: "red", alpha: 0.7 },
secondHand: { lineWidth: 10, startAt: 61, endAt: 71, color: "blue", alpha: 0.6 },
secondDecoration: { lineWidth: 10, startAt: 30, radius: 40, fillColor: "blue", color: "red", alpha: 0.0 }
}
}
};
CoolClock.prototype = {
init: function(canvasId,displayRadius,skinId,showSecondHand) {
this.canvasId = canvasId;
this.displayRadius = displayRadius || CoolClock.config.defaultRadius;
this.skinId = skinId || CoolClock.config.defaultSkin;
this.showSecondHand = typeof showSecondHand == "boolean" ? showSecondHand : true;
this.tickDelay = CoolClock.config[ this.showSecondHand ? "tickDelay" : "longTickDelay"];
this.canvas = document.getElementById(canvasId);
this.canvas.setAttribute("width",this.displayRadius*2);
this.canvas.setAttribute("height",this.displayRadius*2);
this.renderRadius = CoolClock.config.renderRadius;
var scale = this.displayRadius / this.renderRadius;
this.ctx = this.canvas.getContext("2d");
this.ctx.scale(scale,scale);
CoolClock.config.clockTracker[canvasId] = this;
this.tick();
return this;
},
fullCircle: function(skin) {
this.fullCircleAt(this.renderRadius,this.renderRadius,skin);
},
fullCircleAt: function(x,y,skin) {
with (this.ctx) {
save();
globalAlpha = skin.alpha;
lineWidth = skin.lineWidth;
if (!document.all)
beginPath();
arc(x, y, skin.radius, 0, 2*Math.PI, false);
if (skin.fillColor) {
fillStyle = skin.fillColor
fill();
}
else {
// XXX why not stroke and fill
strokeStyle = skin.color;
stroke();
}
restore();
}
},
radialLineAtAngle: function(angleFraction,skin) {
with (this.ctx) {
save();
translate(this.renderRadius,this.renderRadius);
rotate(Math.PI * (2 * angleFraction - 0.5));
globalAlpha = skin.alpha;
strokeStyle = skin.color;
lineWidth = skin.lineWidth;
if (skin.radius) {
this.fullCircleAt(skin.startAt,0,skin)
}
else {
beginPath();
moveTo(skin.startAt,0)
lineTo(skin.endAt,0);
stroke();
}
restore();
}
},
render: function(hour,min,sec) {
var skin = CoolClock.config.skins[this.skinId];
this.ctx.clearRect(0,0,this.renderRadius*2,this.renderRadius*2);
this.fullCircle(skin.outerBorder);
for (var i=0;i<60;i++)
this.radialLineAtAngle(i/60,skin[ i%5 ? "smallIndicator" : "largeIndicator"]);
this.radialLineAtAngle((hour+min/60)/12,skin.hourHand);
this.radialLineAtAngle((min+sec/60)/60,skin.minuteHand);
if (this.showSecondHand) {
this.radialLineAtAngle(sec/60,skin.secondHand);
this.radialLineAtAngle(sec/60,skin.secondDecoration);
}
},
nextTick: function() {
setTimeout("CoolClock.config.clockTracker['"+this.canvasId+"'].tick()",this.tickDelay);
},
stillHere: function() {
return document.getElementById(this.canvasId) != null;
},
refreshDisplay: function() {
var now = new Date();
this.render(now.getHours(),now.getMinutes(),now.getSeconds());
},
tick: function() {
if (this.stillHere()) {
this.refreshDisplay()
this.nextTick();
}
}
}
config.macros.clock2 = {
counter: 0,
handler: function (place,macroName,params,wikifier,paramString,tiddler) {
var size,skin,seconds,skinData;
for (var i=0;i<params.length;i++)
if (/^\d+$/.exec(params[i]))
size = params[i];
else if (params[i] == "noSeconds")
seconds = false;
else if (/^\{/.exec(params[i]))
eval("skinData = " + params[i]);
else
skin = params[i];
if (skinData) {
CoolClock.config.skins.customSkin = skinData;
skin = "customSkin";
}
var canvas = createTiddlyElement(place,"canvas","clockcanvas"+this.counter);
var clock = new CoolClock("clockcanvas"+this.counter,size,skin,seconds);
this.counter++;
}
}
story.permaView();
//}}}
//{{{
merge(config.commands.cancelTiddler,{
handler_mptw_orig_closeUnsaved: config.commands.cancelTiddler.handler,
handler: function(event,src,title) {
this.handler_mptw_orig_closeUnsaved(event,src,title);
if (!story.isDirty(title) && !store.tiddlerExists(title) && !store.isShadowTiddler(title))
story.closeTiddler(title,true);
return false;
}
});
//}}}
Name: MptwRed
Background: #fff
Foreground: #000
PrimaryPale: #eaa
PrimaryLight: #c55
PrimaryMid: #711
PrimaryDark: #500
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
[[Ласкаво просимо!]]
[[Новини]]
//{{{
window.onClickTag_mptw_orig = window.onClickTag;
window.onClickTag = function(e) {
window.onClickTag_mptw_orig.apply(this,arguments);
var tag = this.getAttribute("tag");
var title = this.getAttribute("tiddler");
var popup = Popup.stack[Popup.stack.length-1].popup;
createTiddlyElement(createTiddlyElement(popup,"li",null,"listBreak"),"div");
wikify("<<newTiddler label:'New tiddler' tag: '"+tag+"'>>",createTiddlyElement(popup,"li"));
return false;
}
//}}}
//{{{
config.fontSize={};
//configuration settings
config.fontSize.settings =
{
defaultSize : 100, // all sizes in %
maxSize : 200,
minSize : 40,
stepSize : 10
};
//startup code
var fontSettings = config.fontSize.settings;
if (!config.options.txtFontSize)
{config.options.txtFontSize = fontSettings.defaultSize;
saveOptionCookie("txtFontSize");}
setStylesheet(".tiddler .viewer {font-size:"+config.options.txtFontSize+"%;}\n","fontResizerStyles");
setStylesheet("#contentWrapper .fontResizer .button {display:inline;font-size:105%; font-weight:bold; margin:0 1px; padding: 0 3px; text-align:center !important;}\n .fontResizer {margin:0 0.5em;}","fontResizerButtonStyles");
//macro
config.macros.fontSize={};
config.macros.fontSize.handler = function (place,macroName,params,wikifier,paramString,tiddler)
{
var sp = createTiddlyElement(place,"span",null,"fontResizer");
sp.ondblclick=this.onDblClick;
if (params[0])
createTiddlyText(sp,params[0]);
createTiddlyButton(sp,"↓↓↓","зменшити розмір шрифта",this.decFont);
createTiddlyButton(sp,"100%","стандартний розмір шрифта",this.resetFont);
createTiddlyButton(sp,"↑↑↑","збільшити розмір шрифта",this.incFont);
}
config.macros.fontSize.onDblClick = function (e)
{
if (!e) var e = window.event;
e.cancelBubble = true;
if (e.stopPropagation) e.stopPropagation();
return false;
}
config.macros.fontSize.setFont = function ()
{
saveOptionCookie("txtFontSize");
setStylesheet(".tiddler .viewer {font-size:"+config.options.txtFontSize+"%;}\n","fontResizerStyles");
}
config.macros.fontSize.incFont=function()
{
if (config.options.txtFontSize < fontSettings.maxSize)
config.options.txtFontSize = (config.options.txtFontSize*1)+fontSettings.stepSize;
config.macros.fontSize.setFont();
}
config.macros.fontSize.decFont=function()
{
if (config.options.txtFontSize > fontSettings.minSize)
config.options.txtFontSize = (config.options.txtFontSize*1) - fontSettings.stepSize;
config.macros.fontSize.setFont();
}
config.macros.fontSize.resetFont=function()
{
config.options.txtFontSize=fontSettings.defaultSize;
config.macros.fontSize.setFont();
}
config.paramifiers.font =
{
onstart: function(v)
{
config.options.txtFontSize = v;
config.macros.fontSize.setFont();
}
};
//}}}
/***
|Name|FullScreenPlugin|
|Created by|SaqImtiaz|
|Location|http://tw.lewcid.org/#FullScreenPlugin|
|Version|1.1|
|Requires|~TW2.x|
!Description:
Toggle between viewing tiddlers fullscreen and normally. Very handy for when you need more viewing space.
!Demo:
Click the ↕ button in the toolbar for this tiddler. Click it again to turn off fullscreen.
!Installation:
Copy the contents of this tiddler to your TW, tag with systemConfig, save and reload your TW.
Edit the ViewTemplate to add the fullscreen command to the toolbar.
!History:
*25-07-06: ver 1.1
*20-07-06: ver 1.0
!Code
***/
//{{{
var lewcidFullScreen = false;
config.commands.fullscreen =
{
text:"",
tooltip:"Перемикач повноекранного режиму"
};
config.commands.fullscreen.handler = function (event,src,title)
{
if (lewcidFullScreen == false)
{
lewcidFullScreen = true;
setStylesheet('#sidebar, .header, #mainMenu{display:none;} #displayArea{margin:0em 0 0 0 !important;}',"lewcidFullScreenStyle");
}
else
{
lewcidFullScreen = false;
setStylesheet(' ',"lewcidFullScreenStyle");
}
}
config.macros.fullscreen={};
config.macros.fullscreen.handler = function(place,macroName,params,wikifier,paramString,tiddler)
{
var label = params[0]||" ↕ ";
var tooltip = params[1]||"Перемикнути повноекранний режим";
createTiddlyButton(place,label,tooltip,config.commands.fullscreen.handler);
}
var lewcid_fullscreen_closeTiddler = Story.prototype.closeTiddler;
Story.prototype.closeTiddler =function(title,animate,slowly)
{
lewcid_fullscreen_closeTiddler.apply(this,arguments);
if (story.isEmpty() && lewcidFullScreen == true)
config.commands.fullscreen.handler();
}
Slider.prototype.lewcidStop = Slider.prototype.stop;
Slider.prototype.stop = function()
{
this.lewcidStop();
if (story.isEmpty() && lewcidFullScreen == true)
config.commands.fullscreen.handler();
}
//}}}
//{{{
window.hideWhenLastTest = false;
window.removeElementWhen = function(test,place) {
window.hideWhenLastTest = test;
if (test) {
jQuery(place).empty()
place.parentNode.removeChild(place);
}
};
merge(config.macros,{
hideWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( eval(paramString), place );
}},
showWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( !eval(paramString), place );
}},
hideWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( tiddler.tags.containsAll(params), place );
}},
showWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( !tiddler.tags.containsAll(params), place );
}},
hideWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( tiddler.tags.containsAny(params), place );
}},
showWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( !tiddler.tags.containsAny(params), place );
}},
hideWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( tiddler.tags.containsAll(params), place );
}},
showWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( !tiddler.tags.containsAll(params), place );
}},
hideWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0]), place );
}},
showWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( !(store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0])), place );
}},
hideWhenTitleIs: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( tiddler.title == params[0], place );
}},
showWhenTitleIs: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( tiddler.title != params[0], place );
}},
'else': { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
removeElementWhen( !window.hideWhenLastTest, place );
}}
});
//}}}
<<top>><<renameButton '↑' >>
<<toggleSideBar>><<renameButton '◊' >>
<<jump ⁞ '' top>>
<<fullscreen>><<renameButton '□' >>
//{{{
config.hoverMenu={};
//}}}
/***
HoverMenu configuration settings
***/
//{{{
config.hoverMenu.settings={
align: 'right', //align menu to right or left side of screen, possible values are 'right' and 'left'
x: 3, // horizontal distance of menu from side of screen, increase to your liking.
y: 158 //vertical distance of menu from top of screen at start, increase or decrease to your liking
};
//}}}
//{{{
//continue HoverMenu plugin code
config.hoverMenu.handler=function()
{
if (!document.getElementById("hoverMenu"))
{
var theMenu = createTiddlyElement(document.getElementById("contentWrapper"), "div","hoverMenu");
theMenu.setAttribute("refresh","content");
theMenu.setAttribute("tiddler","HoverMenu");
var menuContent = store.getTiddlerText("HoverMenu");
wikify(menuContent,theMenu);
}
var Xloc = this.settings.x;
Yloc =this.settings.y;
var ns = (navigator.appName.indexOf("Netscape") != -1);
function SetMenu(id)
{
var GetElements=document.getElementById?document.getElementById(id):document.all?document.all[id]:document.layers[id];
if(document.layers)GetElements.style=GetElements;
GetElements.sP=function(x,y){this.style[config.hoverMenu.settings.align]=x +"px";this.style.top=y +"px";};
GetElements.x = Xloc;
GetElements.y = findScrollY();
GetElements.y += Yloc;
return GetElements;
}
window.LoCate_XY=function()
{
var pY = findScrollY();
ftlObj.y += (pY + Yloc - ftlObj.y)/15;
ftlObj.sP(ftlObj.x, ftlObj.y);
setTimeout("LoCate_XY()", 10);
}
ftlObj = SetMenu("hoverMenu");
LoCate_XY();
};
window.old_lewcid_hovermenu_restart = restart;
restart = function()
{
window.old_lewcid_hovermenu_restart();
config.hoverMenu.handler();
};
setStylesheet(
"#hoverMenu .imgLink, #hoverMenu .imgLink:hover {border:none; padding:0px; float:right; margin-bottom:2px; margin-top:0px;}\n"+
"#hoverMenu .button, #hoverMenu .tiddlyLink {border:none; font-weight:bold; background:#18f; color:#FFF; padding:0 5px; float:right; margin-bottom:4px;}\n"+
"#hoverMenu .button:hover, #hoverMenu .tiddlyLink:hover {font-weight:bold; border:none; color:#fff; background:#000; padding:0 5px; float:right; margin-bottom:4px;}\n"+
"#hoverMenu .button {width:100%; text-align:center}"+
"#hoverMenu { position:absolute; width:7px;}\n"+
"\n","hoverMenuStyles");
config.macros.renameButton={};
config.macros.renameButton.handler = function(place,macroName,params,wikifier,paramString,tiddler)
{
if (place.lastChild.tagName!="BR")
{
place.lastChild.firstChild.data = params[0];
if (params[1]) {place.lastChild.title = params[1];}
}
};
config.shadowTiddlers["HoverMenu"]="<<top>>\n<<toggleSideBar>><<renameButton '>' >>\n<<jump j '' top>>\n<<saveChanges>><<renameButton s 'Save TiddlyWiki'>>\n<<newTiddler>><<renameButton n>>\n";
//}}}
//end HoverMenu plugin code
//Start ToggleSideBarMacro code
//{{{
config.macros.toggleSideBar={};
config.macros.toggleSideBar.settings={
styleHide : "#sidebar { display: none;}\n"+"#contentWrapper #displayArea { margin-right: 1em;}\n"+"",
styleShow : " ",
arrow1: "«",
arrow2: "»"
};
config.macros.toggleSideBar.handler=function (place,macroName,params,wikifier,paramString,tiddler)
{
var tooltip= params[1]||'Приховати/відобразити праву панель';
var mode = (params[2] && params[2]=="hide")? "hide":"show";
var arrow = (mode == "hide")? this.settings.arrow1:this.settings.arrow2;
var label= (params[0]&¶ms[0]!='.')?params[0]+" "+arrow:arrow;
var theBtn = createTiddlyButton(place,label,tooltip,this.onToggleSideBar,"button HideSideBarButton");
if (mode == "hide")
{
(document.getElementById("sidebar")).setAttribute("toggle","hide");
setStylesheet(this.settings.styleHide,"ToggleSideBarStyles");
}
};
config.macros.toggleSideBar.onToggleSideBar = function(){
var sidebar = document.getElementById("sidebar");
var settings = config.macros.toggleSideBar.settings;
if (sidebar.getAttribute("toggle")=='hide')
{
setStylesheet(settings.styleShow,"ToggleSideBarStyles");
sidebar.setAttribute("toggle","show");
this.firstChild.data= (this.firstChild.data).replace(settings.arrow1,settings.arrow2);
}
else
{
setStylesheet(settings.styleHide,"ToggleSideBarStyles");
sidebar.setAttribute("toggle","hide");
this.firstChild.data= (this.firstChild.data).replace(settings.arrow2,settings.arrow1);
}
return false;
}
setStylesheet(".HideSideBarButton .button {font-weight:bold; padding: 0 5px;}\n","ToggleSideBarButtonStyles");
//}}}
//end ToggleSideBarMacro code
//start JumpToTopMacro code
//{{{
config.macros.top={};
config.macros.top.handler=function(place,macroName)
{
createTiddlyButton(place,"^","jump to top",this.onclick);
}
config.macros.top.onclick=function()
{
window.scrollTo(0,0);
};
config.commands.top =
{
text:" ^ ",
tooltip:"jump to top"
};
config.commands.top.handler = function(event,src,title)
{
window.scrollTo(0,0);
}
//}}}
//end JumpToStartMacro code
//start JumpMacro code
//{{{
config.macros.jump= {};
config.macros.jump.handler = function (place,macroName,params,wikifier,paramString,tiddler)
{
var label = (params[0] && params[0]!=".")? params[0]: 'jump';
var tooltip = (params[1] && params[1]!=".")? params[1]: 'Перейти до нотатку';
var top = (params[2] && params[2]=='top') ? true: false;
var btn =createTiddlyButton(place,label,tooltip,this.onclick);
if (top==true)
btn.setAttribute("top","true")
}
config.macros.jump.onclick = function(e)
{
if (!e) var e = window.event;
var theTarget = resolveTarget(e);
var top = theTarget.getAttribute("top");
var popup = Popup.create(this);
if(popup)
{
if(top=="true")
{createTiddlyButton(createTiddlyElement(popup,"li"),'Top ↑','Top of TW',config.macros.jump.top);
createTiddlyElement(popup,"hr");}
story.forEachTiddler(function(title,element) {
createTiddlyLink(createTiddlyElement(popup,"li"),title,true);
});
}
Popup.show(popup,false);
e.cancelBubble = true;
if (e.stopPropagation) e.stopPropagation();
return false;
}
config.macros.jump.top = function()
{
window.scrollTo(0,0);
}
//}}}
//end JumpMacro code
//utility functions
//{{{
Popup.show = function(unused,slowly)
{
var curr = Popup.stack[Popup.stack.length-1];
var rootLeft = findPosX(curr.root);
var rootTop = findPosY(curr.root);
var rootHeight = curr.root.offsetHeight;
var popupLeft = rootLeft;
var popupTop = rootTop + rootHeight;
var popupWidth = curr.popup.offsetWidth;
var winWidth = findWindowWidth();
if (isChild(curr.root,'hoverMenu'))
var x = config.hoverMenu.settings.x;
else
var x = 0;
if(popupLeft + popupWidth+x > winWidth)
popupLeft = winWidth - popupWidth -x;
if (isChild(curr.root,'hoverMenu'))
{curr.popup.style.right = x + "px";}
else
curr.popup.style.left = popupLeft + "px";
curr.popup.style.top = popupTop + "px";
curr.popup.style.display = "block";
addClass(curr.root,"highlight");
if(config.options.chkAnimate)
anim.startAnimating(new Scroller(curr.popup,slowly));
else
window.scrollTo(0,ensureVisible(curr.popup));
}
window.isChild = function(e,parentId) {
while (e != null) {
var parent = document.getElementById(parentId);
if (parent == e) return true;
e = e.parentNode;
}
return false;
};
//}}}
Успіх чекає на того, хто має достатньо відваги, рішучості та наполегливості, щоб до нього дістатися!
ДЕСЯТЬ учнів Академічного ліцею «Європейський» представляли власні дослідницькі роботи на ІІ (обласному) етапі конкурсу-захисту учнівських наукових робіт МАН цього року. Юнаки та дівчата достойно представили заклад, блискуче захистили наукові розвідки та стали переможцями/ лауреатами конкурсу-захисту:
- Анастасія ЄРЧЕНКО, секція "Кліматологія та метеорологія"- 1 МІСЦЕ, науковий керівник, учитель географії Костянтин ЛИТВИХ;
- Світлана ДАНІЄЛЯН, секція "Англійська мова та англомовна література " - 1 МІСЦЕ, науковий керівник, учителька англійської мови Валерія СВІТАЙЛО;
- Олександра ЛІТУТА - 2 МІСЦЕ, секція "Історія України", науковий керівник, учителька історії Олена ТАРАНИЧ;
- Олег МАРЧУК - 2 МІСЦЕ, секція «Системи та технології штучного інтелекту», науковий керівник, учитель інформатики Василь ТОМКО;
- Марія ЛИТВИНЕНКО - 2 МІСЦЕ, секція "Прикладна математика", науковий керівник, учителька математики Галина СІМОНЬКІНА;
- Анастасія КЛИША - 3 МІСЦЕ, секція "Охорона здоров’я», науковий керівник, учителька біології Ольга КЛИША;
- Поліна ГАШКО - 3 МІСЦЕ, секція «Охорона довкілля та раціональне природокористування», науковий керівник, учителька хімії, Євгенія МОКРЕНКО,
- Поліна МАЛИХ – 3 МІСЦЕ, секція "Англійська мова та англомовна література, науковий керівник, учителька англійської мови Світлана ГОЛОВКО;
Лауреатами стали:
- Ксенія АНДРУЩЕНКО, 89 балів у секції «Теоретична фізика», науковий керівник, учителька фізики Оксана ЯРОШЕНКО;
- Марія БАЗІЛЕВСЬКА, 74,9 балів у секції «Етнологія», науковий керівник, учителька української мови та літератури Оксана ОВДІЄНКО.
Щиро вітаємо команду! Пишаємося! Ці перемоги – результат наполегливої праці, жаги до знань і творчого підходу! Ви – гордість ліцею, натхнення для майбутніх поколінь і яскравий приклад того, що наука відкриває безмежні можливості.
<html>
<a href="news/2025/03/man/01.jpg" rel="iLoad|man032025"><img src="news/2025/03/man/_01.jpg"/></a>
<a href="news/2025/03/man/02.jpg" rel="iLoad|man032025"><img src="news/2025/03/man/_02.jpg"/></a>
<a href="news/2025/03/man/03.jpg" rel="iLoad|man032025"><img src="news/2025/03/man/_03.jpg"/></a>
<a href="news/2025/03/man/04.jpg" rel="iLoad|man032025"><img src="news/2025/03/man/_04.jpg"/></a>
</html>
//{{{
version.extensions.ImageSizePlugin= {major: 1, minor: 2, revision: 3, date: new Date(2011,9,3)};
//}}}
//{{{
var f=config.formatters[config.formatters.findByField("name","image")];
f.match="\\[[<>]?[Ii][Mm][Gg](?:\\([^,]*,[^\\)]*\\))?\\[";
f.lookaheadRegExp=/\[([<]?)(>?)[Ii][Mm][Gg](?:\(([^,]*),([^\)]*)\))?\[(?:([^\|\]]+)\|)?([^\[\]\|]+)\](?:\[([^\]]*)\])?\]/mg;
f.handler=function(w) {
this.lookaheadRegExp.lastIndex = w.matchStart;
var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
var floatLeft=lookaheadMatch[1];
var floatRight=lookaheadMatch[2];
var width=lookaheadMatch[3];
var height=lookaheadMatch[4];
var tooltip=lookaheadMatch[5];
var src=lookaheadMatch[6];
var link=lookaheadMatch[7];
// Simple bracketted link
var e = w.output;
if(link) { // LINKED IMAGE
if (config.formatterHelpers.isExternalLink(link)) {
if (config.macros.attach && config.macros.attach.isAttachment(link)) {
// see [[AttachFilePluginFormatters]]
e = createExternalLink(w.output,link);
e.href=config.macros.attach.getAttachment(link);
e.title = config.macros.attach.linkTooltip + link;
} else
e = createExternalLink(w.output,link);
} else
e = createTiddlyLink(w.output,link,false,null,w.isStatic);
addClass(e,"imageLink");
}
var img = createTiddlyElement(e,"img");
if(floatLeft) img.align="left"; else if(floatRight) img.align="right";
if(width||height) {
var x=width.trim(); var y=height.trim();
var stretchW=(x.substr(x.length-1,1)=='+'); if (stretchW) x=x.substr(0,x.length-1);
var stretchH=(y.substr(y.length-1,1)=='+'); if (stretchH) y=y.substr(0,y.length-1);
if (x.substr(0,2)=="{{")
{ try{x=eval(x.substr(2,x.length-4))} catch(e){displayMessage(e.description||e.toString())} }
if (y.substr(0,2)=="{{")
{ try{y=eval(y.substr(2,y.length-4))} catch(e){displayMessage(e.description||e.toString())} }
img.style.width=x.trim(); img.style.height=y.trim();
if (stretchW||stretchH) config.formatterHelpers.addStretchHandlers(img,stretchW,stretchH);
}
if(tooltip) img.title = tooltip;
// GET IMAGE SOURCE
if (config.macros.attach && config.macros.attach.isAttachment(src))
src=config.macros.attach.getAttachment(src); // see [[AttachFilePluginFormatters]]
else if (config.formatterHelpers.resolvePath) { // see [[ImagePathPlugin]]
if (config.browser.isIE || config.browser.isSafari) {
img.onerror=(function(){
this.src=config.formatterHelpers.resolvePath(this.src,false);
return false;
});
} else
src=config.formatterHelpers.resolvePath(src,true);
}
img.src=src;
w.nextMatch = this.lookaheadRegExp.lastIndex;
}
}
config.formatterHelpers.imageSize={
tip: 'SHIFT-CLICK=show full size, CTRL-CLICK=restore initial size',
dragtip: 'DRAG=stretch/shrink, '
}
config.formatterHelpers.addStretchHandlers=function(e,stretchW,stretchH) {
e.title=((stretchW||stretchH)?this.imageSize.dragtip:'')+this.imageSize.tip;
e.statusMsg='width=%0, height=%1';
e.style.cursor='move';
e.originalW=e.style.width;
e.originalH=e.style.height;
e.minW=Math.max(e.offsetWidth/20,10);
e.minH=Math.max(e.offsetHeight/20,10);
e.stretchW=stretchW;
e.stretchH=stretchH;
e.onmousedown=function(ev) { var ev=ev||window.event;
this.sizing=true;
this.startX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
this.startY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
this.startW=this.offsetWidth;
this.startH=this.offsetHeight;
return false;
};
e.onmousemove=function(ev) { var ev=ev||window.event;
if (this.sizing) {
var s=this.style;
var currX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
var currY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
var newW=(currX-this.offsetLeft)/(this.startX-this.offsetLeft)*this.startW;
var newH=(currY-this.offsetTop )/(this.startY-this.offsetTop )*this.startH;
if (this.stretchW) s.width =Math.floor(Math.max(newW,this.minW))+'px';
if (this.stretchH) s.height=Math.floor(Math.max(newH,this.minH))+'px';
clearMessage(); displayMessage(this.statusMsg.format([s.width,s.height]));
}
return false;
};
e.onmouseup=function(ev) { var ev=ev||window.event;
if (ev.shiftKey) { this.style.width=this.style.height=''; }
if (ev.ctrlKey) { this.style.width=this.originalW; this.style.height=this.originalH; }
this.sizing=false;
clearMessage();
return false;
};
e.onmouseout=function(ev) { var ev=ev||window.event;
this.sizing=false;
clearMessage();
return false;
};
}
//}}}
config.formatters.unshift( {
name: "inlinesliders",
match: "\\+\\+\\+\\+|\\<slider",
lookaheadRegExp: /(?:\+\+\+\+|<slider) (.*?)(?:>?)\n((?:.|\n)*?)\n(?:====|<\/slider>)/mg,
handler: function(w)
{
this.lookaheadRegExp.lastIndex = w.matchStart;
var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
if(lookaheadMatch && lookaheadMatch.index == w.matchStart )
{
var btn = createTiddlyButton(w.output,lookaheadMatch[1] + " "+"\u00BB",lookaheadMatch[1],this.onClickSlider,"button sliderButton");
var panel = createTiddlyElement(w.output,"div",null,"sliderPanel");
panel.style.display = "none";
wikify(lookaheadMatch[2],panel);
w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
}
},
onClickSlider : function(e)
{
if(!e) var e = window.event;
var n = this.nextSibling;
n.style.display = (n.style.display=="none") ? "block" : "none";
return false;
}
})
//{{{
config.formatters.unshift( {
name: "inlinetabs",
match: "\\<tabs",
lookaheadRegExp: /(?:<tabs (.*)>\n)((?:.|\n)*?)(?:\n<\/tabs>)/mg,
handler: function(w)
{
this.lookaheadRegExp.lastIndex = w.matchStart;
var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
if(lookaheadMatch && lookaheadMatch.index == w.matchStart)
{
var cookie = lookaheadMatch[1];
var wrapper = createTiddlyElement(null,"div",null,cookie);
var tabset = createTiddlyElement(wrapper,"div",null,"tabset");
tabset.setAttribute("cookie",cookie);
var validTab = false;
var firstTab = '';
var tabregexp = /(?:<tab (.*)>)(?:(?:\n)?)((?:.|\n)*?)(?:<\/tab>)/mg;
while((m = tabregexp.exec(lookaheadMatch[2])) != null)
{
if (firstTab == '') firstTab = m[1];
var tab = createTiddlyButton(tabset,m[1],m[1],story.onClickInlineTab,"tab tabUnselected");
tab.setAttribute("tab",m[1]);
tab.setAttribute("content",m[2]);
tab.title = m[1];
if(config.options[cookie] == m[1])
validTab = true;
}
if(!validTab)
config.options[cookie] = firstTab;
w.output.appendChild(wrapper);
story.switchInlineTab(tabset,config.options[cookie]);
w.nextMatch = this.lookaheadRegExp.lastIndex;
}
}
})
Story.prototype.switchInlineTab = function(tabset,tab)
{
var cookie = tabset.getAttribute("cookie");
var theTab = null
var nodes = tabset.childNodes;
for(var t=0; t<nodes.length; t++)
if(nodes[t].getAttribute && nodes[t].getAttribute("tab") == tab)
{
theTab = nodes[t];
theTab.className = "tab tabSelected";
}
else
nodes[t].className = "tab tabUnselected"
if(theTab)
{
if(tabset.nextSibling && tabset.nextSibling.className == "tabContents")
tabset.parentNode.removeChild(tabset.nextSibling);
var tabContent = createTiddlyElement(null,"div",null,"tabContents");
tabset.parentNode.insertBefore(tabContent,tabset.nextSibling);
wikify(theTab.getAttribute("content"),tabContent);
if(cookie)
{
config.options[cookie] = tab;
saveOptionCookie(cookie);
}
}
}
Story.prototype.onClickInlineTab = function(e)
{
story.switchInlineTab(this.parentNode,this.getAttribute("tab"));
return false;
}
//}}}
//{{{
config.InstantTimestamp = {
timeFormat: 'DD/0MM/YY 0hh:0mm',
dateFormat: '0DD/0MM/YY',
translations: [
[/^!ts?$/img, "'!!{{ts{'+now.formatString(config.InstantTimestamp.timeFormat)+'}}}'"],
[/^!ds?$/img, "'!!{{ds{'+now.formatString(config.InstantTimestamp.dateFormat)+'}}}'"],
[/\{ts?\}(?!\}\})/ig,"'{{ts{'+now.formatString(config.InstantTimestamp.timeFormat)+'}}}'"],
[/\{ds?\}(?!\}\})/ig,"'{{ds{'+now.formatString(config.InstantTimestamp.dateFormat)+'}}}'"]
],
excludeTags: [
"noAutoCorrect",
"noTimestamp",
"html",
"CSS",
"css",
"systemConfig",
"systemConfigDisabled",
"zsystemConfig",
"Plugins",
"Plugin",
"plugins",
"plugin",
"javascript",
"code",
"systemTheme",
"systemPalette"
],
excludeTiddlers: [
"StyleSheet",
"StyleSheetLayout",
"StyleSheetColors",
"StyleSheetPrint"
]
};
TiddlyWiki.prototype.saveTiddler_mptw_instanttimestamp = TiddlyWiki.prototype.saveTiddler;
TiddlyWiki.prototype.saveTiddler = function(title,newTitle,newBody,modifier,modified,tags,fields,clearChangeCount,created) {
tags = tags ? tags : [];
tags = (typeof(tags) == "string") ? tags.readBracketedList() : tags;
var conf = config.InstantTimestamp;
if ( !tags.containsAny(conf.excludeTags) && !conf.excludeTiddlers.contains(newTitle) ) {
var now = new Date();
var trans = conf.translations;
for (var i=0;i<trans.length;i++) {
newBody = newBody.replace(trans[i][0], eval(trans[i][1]));
}
}
return this.saveTiddler_mptw_instanttimestamp(title,newTitle,newBody,modifier,modified,tags,fields,clearChangeCount,created);
}
setStylesheet(".ts,.ds { font-style:italic; }","instantTimestampStyles");
//}}}
config.macros.top={};
config.macros.top.handler=function(place,macroName) {
createTiddlyButton(place,"↑ Вгору ↑","Перейти до початку поточної сторінки",this.onclick);
}
config.macros.top.onclick=function() {
window.scrollTo(0,0);
};
config.commands.top = {
text:" ^ ",
tooltip:"jump to top"
};
config.commands.top.handler = function(event,src,title) {
window.scrollTo(0,0);
}
//{{{
var MINS = 60 * 1000;
var HOURS = 60 * MINS;
var DAYS = 24 * HOURS;
if (!config.lessBackups) {
config.lessBackups = {
modes: [
["YYYY", 365*DAYS],
["MMM", 31*DAYS],
["ddd", 7*DAYS],
//["d0DD", 1*DAYS],
["h0hh", 24*HOURS],
["m0mm", 1*HOURS],
["s0ss", 1*MINS],
["latest",0]
]
};
}
window.getSpecialBackupPath = function(backupPath) {
var now = new Date();
var modes = config.lessBackups.modes;
for (var i=0;i<modes.length;i++) {
var specialBackupPath = backupPath.replace(/(\.)([0-9]+\.[0-9]+)(\.html)$/,
'$1'+now.formatString(modes[i][0]).toLowerCase()+'$3')
try {
if (config.browser.isIE) {
var fsobject = new ActiveXObject("Scripting.FileSystemObject")
var fileExists = fsobject.FileExists(specialBackupPath);
if (fileExists) {
var fileObject = fsobject.GetFile(specialBackupPath);
var modDate = new Date(fileObject.DateLastModified).valueOf();
}
}
else {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(specialBackupPath);
var fileExists = file.exists();
if (fileExists) {
var modDate = file.lastModifiedTime;
}
}
}
catch(e) {
return backupPath;
}
var expiry = new Date(modDate + modes[i][1]);
if (!fileExists || now > expiry)
return specialBackupPath;
}
}
window.getBackupPath_mptw_orig = window.getBackupPath;
window.getBackupPath = function(localPath) {
return getSpecialBackupPath(getBackupPath_mptw_orig(localPath));
}
//}}}
*Новини
**[[Стрічка новин|Новини]]
**[[Календар подій]]
*Про ліцей
**[[Наша візитка]]
**[[Історія закладу]]
**[[Інноваційна діяльність]]
*Педагогічний колектив
**[[Адміністрація]]
**[[Професійні педагогічні спільноти]]
*Прозорість управління
**[[Нормативні документи]]
**[[Фінансова звітність]]
**[[Публічна інформація]]
*Освітній процес
**[[Інтелект та обдарованість]]
**[[Учнівське самоврядування]]
**[[Проєктно-дослідницька діяльність]]
**[[Національно-патріотичне виховання]]
**[[Критерії оцінювання|Критерії оцінювання навчальних досягнень]]
**[[Профорієнтаційна сторінка]]
**[[Морально-етичне виховання]]
**[[Клуби та студії]]
**[[СпортLife]]
**[[Соціально-психологічна підтримка]]
**[[Протидія булінгу]]
*Методична робота
**[[На допомогу вчителю]]
**[[Підвищення кваліфікації]]
**[[Атестація педпрацівників]]
**[[Основні методичні заходи]]
**[[Педагогічний Олімп]]
**[[Методичні лайфхаки]]
*Інформаційна сторінка
**[[Батькам]]
**[[Учням]]
<<accordion>>
__''Наша адреса''__:<br>37500 м.Лубни Полтавської області, вул. Монастирська, 36
[[Показати на мапі|https://goo.gl/maps/GUg2HkRZ2Yf4PjNK7]]
__''Телефони''__:<br>(053615)-71-799, 63-002, 70-838
__''Електронна пошта''__:<br>[[schoolsuncity@ukr.net|mailto:schoolsuncity@ukr.net]]
----
| !Зроблено у [[TiddlyWiki|http://www.tiddlywiki.com]] <<version>> |
<html><div align="center"><input type="button" value="Написати вебмайстру" onClick="location.href='mailto:a_farisey@ukr.net&subject=schoolsuncity.ho.ua';"</div></html>
<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
//{{{
(function($){
merge(config.macros,{
mptwCollapse: {
handler: function(place,macroName,params) {
createTiddlyButton(place, params[0] == '+' ? '\u25AD' : '\u25AC', 'collapse/uncollapse', function(){
$(story.findContainingTiddler(place)).toggleClass('collapsed');
});
}
}
});
/* this doesn't work unless you have a modified ViewTempate */
config.shadowTiddlers["MptwCollapsePluginStyles"] = ""
+".collapsed .uncollapsedView { display:none; }"
+".collapsedView { display:none; }"
+".collapsed .collapsedView { display:block; }"
+".tiddler.collapsed { padding-bottom:1em; }"
+".tiddler.collapsed .title { font-size:100%; }"
;
store.addNotification("MptwCollapsePluginStyles",refreshStyles);
})(jQuery);
//}}}
//{{{
var originalReadOnly = readOnly;
var originalShowBackstage = showBackstage;
config.options.chkHttpReadOnly = true;
showBackstage = false;
readOnly = (window.location.protocol !== "file:");
config.options.chkInsertTabs = false;
config.views.wikified.defaultText = "";
config.views.editor.defaultText = "";
config.options.chkSaveBackups = true;
config.options.txtBackupFolder = 'backup';
config.options.chkAutoSave = (window.location.protocol == "file:");
config.mptwVersion = "2.7.3";
config.macros.mptwVersion={handler:function(place){wikify(config.mptwVersion,place);}};
if (config.options.txtTheme == '')
config.options.txtTheme = 'MptwTheme';
config.shadowTiddlers.GettingStarted += "\n\nSee also [[MPTW]].";
config.shadowTiddlers.OptionsPanel = config.shadowTiddlers.OptionsPanel.replace(/(\n\-\-\-\-\nAlso see \[\[AdvancedOptions\]\])/, "{{select{<<selectTheme>>\n<<selectPalette>>}}}$1");
config.mptwDateFormat = 'DD.MM.YY';
config.mptwJournalFormat = 'Нотаток від DD.0MM.YYYY';
config.mptwJournalTags = '0MM YYYY';
//}}}
|Name|MptwRounded|
|Description|Mptw Theme with some rounded corners (Firefox only)|
|ViewTemplate|MptwTheme##ViewTemplate|
|EditTemplate|MptwTheme##EditTemplate|
|PageTemplate|MptwTheme##PageTemplate|
|StyleSheet|##StyleSheet|
!StyleSheet
/*{{{*/
[[StyleSheetShortcuts]]
[[MptwTheme##StyleSheet]]
.viewer tr.oddRow { background-color: #ffe; }
.viewer tr.evenRow { background-color: #eee; }
.tiddler,
.sliderPanel,
.button,
.tiddlyLink,
.tabContents
{ -moz-border-radius: 1em; }
.tab {
-moz-border-radius-topleft: 0.5em;
-moz-border-radius-topright: 0.5em;
}
#topMenu {
-moz-border-radius-bottomleft: 2em;
-moz-border-radius-bottomright: 2em;
}
/*}}}*/
|Name|MptwStandard|
|Description|Mptw Theme with the default TiddlyWiki PageLayout and Styles|
|ViewTemplate|MptwTheme##ViewTemplate|
|EditTemplate|MptwTheme##EditTemplate|
|Name|MptwTheme|
|Description|Mptw Theme including custom PageLayout|
|PageTemplate|##PageTemplate|
|ViewTemplate|##ViewTemplate|
|EditTemplate|##EditTemplate|
|StyleSheet|##StyleSheet|
http://mptw.tiddlyspot.com/#MptwTheme ($Rev: 1829 $)
!PageTemplate
<!--{{{-->
<div class='header' style='background: url(pict/TitleBG.jpg) top left repeat'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<!-- div id='topMenu' refresh='content' -->
<!-- tiddler='MainMenu'></div> -->
<div id="topMenu" refresh="content" tiddler="TopMenu">;</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
<div id='ContentFooter' refresh='content' tiddler='contentFooter'></div>
</div>
<!--}}}-->
!ViewTemplate
<!--{{{-->
<div class="uncollapsedView">
[[MptwTheme##ViewTemplateToolbar]]
<span macro="tiddler BackgroundColors" style="display:none"></span>
<div class='titleContainer'>
<div class='title' macro='view title'></div>
</div>
</div>
<div class='subtitle'>
<!--
(updated <span macro='view modified date {{config.mptwDateFormat?config.mptwDateFormat:"MM/0DD/YY"}}'></span>
by <span macro='view modifier link'></span>)
-->
<!--
(<span macro='message views.wikified.createdPrompt'></span>
<span macro='view created date {{config.mptwDateFormat?config.mptwDateFormat:"MM/0DD/YY"}}'></span>)
-->
</div>
<div macro="showWhen tiddler.tags.containsAny(['css','html','pre','systemConfig']) && !tiddler.text.match('{{'+'{')">
<div class='viewer'><pre macro='view text'></pre></div>
</div>
<div macro="else">
<div class='viewer' macro='view text wikified'></div>
</div>
</div>
<div class="collapsedView">
<span class='toolbar'>
<span macro='mptwCollapse +'></span>
</span>
<span class='title' macro='view title'></span>
</div>
<!--}}}-->
!ViewTemplateToolbar
<!--{{{-->
<div class='toolbar'>
<span macro="showWhenTagged systemConfig">
</span>
<span macro="showWhenTagged systemTheme"><span macro="applyTheme"></span></span>
<span macro="showWhenTagged systemPalette"><span macro="applyPalette"></span></span>
<span macro="showWhen tiddler.tags.contains('css') || tiddler.title == 'StyleSheet'"><span macro="refreshAll"></span></span>
<span style="padding:1em;"></span>
<span macro='toolbar +editTiddler deleteTiddler -closeTiddler </span>
<!--span macro='mptwCollapse -'></span-->
</div>
<!--}}}-->
!EditTemplate
<!--{{{-->
<div class="toolbar" macro="toolbar +saveTiddler cancelTiddler deleteTiddler"></div>
<div class="title" macro="view title"></div>
<div class="editLabel">Заголовок нотатку</div><div class="editor" macro="edit title"></div>
<div macro='annotations'></div>
<div class="editLabel">Теги (ключові слова)</div><div class="editor" macro="edit tags"></div>
<div class="editLabel">Зміст нотатку</div><div class="editor" macro="edit text"></div>
<div class="editorFooter"><span macro="message views.editor.tagPrompt"></span><span macro="tagChooser"></span></div>
<!--}}}-->
!StyleSheet
/*{{{*/
/* a contrasting background so I can see where one tiddler ends and the other begins */
body {background-image: url(pict/BodyBG.jpg);
background-repeat: repeat; background-position: left; backgound-color: transparent; font-family: Helvetica;}
/* sexy colours and font for the header */
.headerForeground {
color: [[ColorPalette::PrimaryPale]];
}
.headerShadow, .headerShadow a {
color: [[ColorPalette::PrimaryMid]];
}
/* separate the top menu parts */
.headerForeground, .headerShadow {
padding: 1em 1em 0;
}
.headerForeground, .headerShadow {
font-family: 'Trebuchet MS', sans-serif;
font-weight:bold;
}
.headerForeground .siteSubtitle {
color: [[ColorPalette::PrimaryLight]];
}
.headerShadow .siteSubtitle {
color: [[ColorPalette::PrimaryMid]];
}
/* make shadow go and down right instead of up and left */
.headerShadow {
left: 0px;
top: 0px;
}
/* prefer monospace for editing */
.editor textarea, .editor input {
font-family: 'Consolas', monospace;
background-color:[[ColorPalette::TertiaryPale]];
}
/* sexy tiddler titles */
.title {
font-size: 200%;
color: black;
font-family: Verdana, 'Times New Roman', sans-serif;
}
/* more subtle tiddler subtitle */
.subtitle {
padding:0px;
margin:0px;
padding-left:1em;
font-size: 90%;
color: [[ColorPalette::TertiaryMid]];
}
.subtitle .tiddlyLink {
color: [[ColorPalette::TertiaryMid]];
}
/* a little bit of extra whitespace */
.viewer {
padding-bottom:3px;
}
/* don't want any background color for headings */
h1,h2,h3,h4,h5,h6 {
background-color: transparent;
color: blue;
}
/* give tiddlers 3d style border and explicit background */
.tiddler {
background: [[ColorPalette::Background]];
border-right: 2px [[ColorPalette::TertiaryMid]] solid;
border-bottom: 2px [[ColorPalette::TertiaryMid]] solid;
margin-bottom: 1em;
padding:1em 2em 2em 1.5em;
}
/* make options slider look nicer */
#sidebarOptions .sliderPanel {
border:solid 1px [[ColorPalette::PrimaryLight]];
}
/* the borders look wrong with the body background */
#sidebar .button {
border-style: none;
}
/* this means you can put line breaks in SidebarOptions for readability */
#sidebarOptions br {
display:none;
}
/* undo the above in OptionsPanel */
#sidebarOptions .sliderPanel br {
display:inline;
}
/*1*/
/* horizontal main menu stuff */
#displayArea {
margin: 1em 11em 0em 12em; /* use the freed up space */
}
#topMenu br {
display: none;
}
topMenu {
background: [[ColorPalette::PrimaryLight]];
color:[[ColorPalette::PrimaryPale]];
}
#topMenu {
padding:2px;
}
#topMenu .button, #topMenu .tiddlyLink, #topMenu a {
margin-left: 0.5em;
margin-right: 0.5em;
padding-left: 3px;
padding-right: 3px;
background: blue;
color: yellow;
font-size: 150%;
}
#topMenu .button:hover, #topMenu .tiddlyLink:hover {
background: white;
color: blue;
}
/* make 2.2 act like 2.1 with the invisible buttons */
.toolbar {
visibility:hidden;
}
.selected .toolbar {
visibility:visible;
}
/* experimental. this is a little borked in IE7 with the button
* borders but worth it I think for the extra screen realestate */
.toolbar { float:right; }
/* fix for TaggerPlugin. from sb56637. improved by FND */
.popup li .tagger a {
display:inline;
}
/* makes theme selector look a little better */
#sidebarOptions .sliderPanel .select .button {
padding:0.5em;
display:block;
}
#sidebarOptions .sliderPanel .select br {
display:none;
}
/* make it print a little cleaner */
@media print {
#topMenu {
display: none ! important;
}
/* not sure if we need all the importants */
.tiddler {
border-style: none ! important;
margin:0px ! important;
padding:0px ! important;
padding-bottom:2em ! important;
}
.tagglyTagging .button, .tagglyTagging .hidebutton {
display: none ! important;
}
.headerShadow {
visibility: hidden ! important;
}
.tagglyTagged .quickopentag, .tagged .quickopentag {
border-style: none ! important;
}
}
/* get user styles specified in StyleSheet */
#siteFooter {text-align:center; clear: both; padding: 2em; height: 3em;}
[[StyleSheet]]
/*}}}*/
|Name|MptwTrim|
|Description|Mptw Theme with a reduced header to increase useful space|
|ViewTemplate|MptwTheme##ViewTemplate|
|EditTemplate|MptwTheme##EditTemplate|
|StyleSheet|MptwTheme##StyleSheet|
|PageTemplate|##PageTemplate|
!PageTemplate
<!--{{{-->
<!-- horizontal MainMenu -->
<div id='topMenu' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<span refresh='content' tiddler='SiteTitle' style="padding-left:1em;font-weight:bold;"></span>:
<span refresh='content' tiddler='MainMenu'></span>
</div>
<div id='sidebar'>
<div id='sidebarOptions'>
<div refresh='content' tiddler='SideBarOptions'></div>
<div style="margin-left:0.1em;"
macro='slider chkTabSliderPanel SideBarTabs {{"tabs \u00bb"}} "Show Timeline, All, Tags, etc"'></div>
</div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
<div id='ContentFooter' refresh='content' tiddler='contentFooter'></div>
</div>
//{{{
config.options.txtTheme = 'MptwRoundTheme';
config.options.txtUserName = 'Master'
config.options.chkSaveBackups = true;
config.options.chkAutoSave = false;
config.options.chkRegExpSearch = false;
config.options.chkCaseSensitiveSearch = false;
config.options.txtBackupFolder = 'backups';
config.options.chkAnimate = true;
//}}}
//{{{
version.extensions.newDocument = {major: 1, minor: 7, revision: 0, date: new Date(2007,3,30)};
config.macros.newDocument = {
newlabel: "new document",
newprompt: "Create a new TiddlyWiki 'starter' document",
newdefault: "new.html",
allparam: "all",
saveaslabel: "save as...",
saveasprompt: "Save current TiddlyWiki to a different file",
printparam: "print",
snapparam: "snap",
snaplabel: "create a snapshot",
snapprompt: "Роздрукувати поточний нотаток",
snapdefault: "snapshot.html",
snapID: "contentWrapper",
snapIDprompt: "Please enter a DOM element ID for the desired content",
snapIDerrmsg: "Unrecognized document element ID: '%0'",
askparam: "ask",
hereparam: "here",
labelparam: "label:",
promptparam: "prompt:",
fileprompt: "Please enter a filename",
filter: "includeNew",
filterprompt: "Match one or more tags:\n(space-separated, use [[...]] around tags containing spaces)",
filtererrmsg: "Error in tag filter '%0'",
snapmsg: "Document snapshot written to %1",
okmsg: "%0 tiddlers written to %1",
failmsg: "An error occurred while creating %0"
};
config.macros.newDocument.handler = function(place,macroName,params) {
var path=getLocalPath(document.location.href);
var slashpos=path.lastIndexOf("/"); if (slashpos==-1) slashpos=path.lastIndexOf("\\");
if (slashpos!=-1) path = path.substr(0,slashpos+1);
if (params[0] && params[0].substr(0,config.macros.newDocument.labelparam.length)==config.macros.newDocument.labelparam)
var label=params.shift().substr(config.macros.newDocument.labelparam.length)
if (params[0] && params[0].substr(0,config.macros.newDocument.promptparam.length)==config.macros.newDocument.promptparam)
var prompt=params.shift().substr(config.macros.newDocument.promptparam.length)
var filename=params.shift(); if (!filename) filename=config.macros.newDocument.newdefault;
if (params[0]==config.macros.newDocument.snapparam || params[0]==config.macros.newDocument.printparam) {
var printmode=(params[0]==config.macros.newDocument.printparam);
params.shift();
if (!label) var label=config.macros.newDocument.snaplabel;
if (!prompt) var prompt=config.macros.newDocument.snapprompt;
var defaultfile=config.macros.newDocument.snapdefault;
var snapID=config.macros.newDocument.snapID;
if (params[0]) var snapID=params.shift();
}
if (params[0]==config.macros.newDocument.allparam) {
if (!label) var label=config.macros.newDocument.saveaslabel;
if (!prompt) var prompt=config.macros.newDocument.saveasprompt;
var defaultfile=getLocalPath(document.location.href);
var slashpos=defaultfile.lastIndexOf("/"); if (slashpos==-1) slashpos=defaultfile.lastIndexOf("\\");
if (slashpos!=-1) defaultfile=defaultfile.substr(slashpos+1);
}
if (!prompt) var prompt=config.macros.newDocument.newprompt;
if (!label) var label=config.macros.newDocument.newlabel;
if (!defaultfile) var defaultfile=config.macros.newDocument.newdefault;
var btn=createTiddlyButton(place,label,prompt,onClickNewDocument);
btn.path=path;
btn.file=filename;
btn.defaultfile=defaultfile;
btn.snapID=snapID;
btn.printmode=printmode;
btn.filter=params.length?params:[config.macros.newDocument.filter];
}
window.onClickNewDocument=function(e)
{
if (!e) var e = window.event; var btn=resolveTarget(e);
var okmsg=config.macros.newDocument.okmsg;
var failmsg=config.macros.newDocument.failmsg;
var count=0;
var out="";
if (btn.snapID) {
var snapID=btn.snapID;
if (btn.snapID==config.macros.newDocument.askparam)
snapID=prompt(config.macros.newDocument.snapIDprompt,config.macros.newDocument.snapID);
if (btn.snapID==config.macros.newDocument.hereparam)
{ var here=story.findContainingTiddler(btn); if (here) snapID=here.id; }
if (!document.getElementById(snapID)) {
if (snapID)
displayMessage(config.macros.newDocument.snapIDerrmsg.format([snapID]));
e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation(); return(false);
}
var styles=document.getElementsByTagName("style");
out+="<html>\n<head>\n<style>\n";
for(var i=0; i < styles.length; i++)
out +="/* stylesheet from tiddler:"+styles[i].getAttribute("id")+" */\n"+styles[i].innerHTML+"\n\n";
out+="</style>\n</head>\n<body>\n\n"+document.getElementById(snapID).innerHTML+"\n\n</body>\n</html>";
okmsg=config.macros.newDocument.snapmsg;
} else {
var sourcefile=getLocalPath(document.location.href);
var source=loadFile(sourcefile);
if(source==null) { alert(config.messages.cantSaveError); return null; }
source=updateMarkupBlock(source,"PRE-HEAD");
source=updateMarkupBlock(source,"POST-HEAD");
source=updateMarkupBlock(source,"PRE-BODY");
source=updateMarkupBlock(source,"POST-BODY");
var posOpeningDiv=source.indexOf(startSaveArea);
var posClosingDiv=source.lastIndexOf(endSaveArea);
if((posOpeningDiv==-1)||(posClosingDiv==-1)) { alert(config.messages.invalidFileError.format([sourcefile])); return; }
var match=btn.filter;
if (match[0]==config.macros.newDocument.askparam) {
var newfilt=prompt(config.macros.newDocument.filterprompt,config.macros.newDocument.filter);
if (!newfilt) return;
match=newfilt.readMacroParams();
}
var storeAreaDivs=[];
var tiddlers=store.getTiddlers('title');
for (var i=0; i<tiddlers.length; i++)
if (match[0]==config.macros.newDocument.allparam || (tiddlers[i].tags && tiddlers[i].tags.containsAny(match)) )
storeAreaDivs.push(store.getSaver().externalizeTiddler(store,tiddlers[i]));
out+=source.substr(0,posOpeningDiv+startSaveArea.length);
out+=convertUnicodeToUTF8(storeAreaDivs.join("\n"))+"\n\t\t";
out+=source.substr(posClosingDiv);
count=storeAreaDivs.length;
}
if (btn.printmode) {
var win=window.open("","_blank","");
win.document.open();
win.document.writeln(out);
win.document.close();
win.focus();
win.print();
} else {
var filename=btn.file;
if (filename==config.macros.newDocument.askparam)
filename=promptForFilename(config.macros.newDocument.fileprompt,btn.path,btn.defaultfile);
if (!filename) return;
var slashpos=filename.lastIndexOf("/"); if (slashpos==-1) slashpos=filename.lastIndexOf("\\");
if (slashpos==-1) filename=btn.path+filename;
var ok=saveFile(filename,out);
var msg=ok?okmsg.format([count,filename]):failmsg.format([filename]);
var link=ok?"file:///"+filename.replace(/\\/g,'/'):"";
clearMessage(); displayMessage(msg,link);
}
e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation(); return(false);
}
//}}}
//{{{
function promptForFilename(msg,path,file)
{
if(window.Components) {
try {
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var nsIFilePicker = window.Components.interfaces.nsIFilePicker;
var picker = Components.classes['@mozilla.org/filepicker;1'].createInstance(nsIFilePicker);
picker.init(window, msg, nsIFilePicker.modeSave);
var thispath = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
thispath.initWithPath(path);
picker.displayDirectory=thispath;
picker.defaultExtension='html';
picker.defaultString=file;
picker.appendFilters(nsIFilePicker.filterAll|nsIFilePicker.filterText|nsIFilePicker.filterHTML);
if (picker.show()!=nsIFilePicker.returnCancel) var result=picker.file.persistentDescriptor;
}
catch(e) { alert('error during local file access: '+e.toString()) }
}
else {
try {
var s = new ActiveXObject('UserAccounts.CommonDialog');
s.Filter='All files|*.*|Text files|*.txt|HTML files|*.htm;*.html|';
s.FilterIndex=3;
s.InitialDir=path;
s.FileName=file;
if (s.showOpen()) var result=s.FileName;
}
catch(e) { var result=prompt(msg,path+file); }
}
return result;
}
//}}}
//{{{
merge(config.macros, {
newHere: {
handler: function(place,macroName,params,wikifier,paramString,tiddler) {
wikify("<<newTiddler "+paramString+" tag:[["+tiddler.title+"]]>>",place,null,tiddler);
}
},
newJournalHere: {
handler: function(place,macroName,params,wikifier,paramString,tiddler) {
wikify("<<newJournal "+paramString+" >>",place,null,tiddler);
}
}
});
//}}}
//{{{
if (config.newMeansNewForJournalsToo == undefined) config.newMeansNewForJournalsToo = true;
String.prototype.getNextFreeName = function() {
numberRegExp = / \(([0-9]+)\)$/;
var match = numberRegExp.exec(this);
if (match) {
var num = parseInt(match[1]) + 1;
return this.replace(numberRegExp," ("+num+")");
}
else {
return this + " (1)";
}
}
config.macros.newTiddler.checkForUnsaved = function(newName) {
var r = false;
story.forEachTiddler(function(title,element) {
if (title == newName)
r = true;
});
return r;
}
config.macros.newTiddler.getName = function(newName) {
while (store.getTiddler(newName) || config.macros.newTiddler.checkForUnsaved(newName))
newName = newName.getNextFreeName();
return newName;
}
config.macros.newTiddler.onClickNewTiddler = function()
{
var title = this.getAttribute("newTitle");
if(this.getAttribute("isJournal") == "true") {
title = new Date().formatString(title.trim());
}
if (config.newMeansNewForJournalsToo || this.getAttribute("isJournal") != "true")
title = config.macros.newTiddler.getName(title);
var params = this.getAttribute("params");
var tags = params ? params.split("|") : [];
var focus = this.getAttribute("newFocus");
var template = this.getAttribute("newTemplate");
var customFields = this.getAttribute("customFields");
if(!customFields && !store.isShadowTiddler(title))
customFields = String.encodeHashMap(config.defaultCustomFields);
story.displayTiddler(null,title,template,false,null,null);
var tiddlerElem = story.getTiddler(title);
if(customFields)
story.addCustomFields(tiddlerElem,customFields);
var text = this.getAttribute("newText");
if(typeof text == "string")
story.getTiddlerField(title,"text").value = text.format([title]);
for(var t=0;t<tags.length;t++)
story.setTiddlerTag(title,tags[t],+1);
story.focusTiddler(title,focus);
return false;
};
//}}}
<<option txtUserName>>
<<option chkSaveBackups>> Резервная копия
<<option chkAutoSave>> Автосохранение
<<option chkAnimate>> Анимация
----
[[Начальные настройки|GettingStarted]]
[[Расширенные настройки|AdvancedOptions]]
//{{{
config.renameTags = {
prompts: {
rename: "Rename the tag '%0' to '%1' in %2 tidder%3?",
remove: "Remove the tag '%0' from %1 tidder%2?"
},
removeTag: function(tag,tiddlers) {
store.suspendNotifications();
for (var i=0;i<tiddlers.length;i++) {
store.setTiddlerTag(tiddlers[i].title,false,tag);
}
store.resumeNotifications();
store.notifyAll();
},
renameTag: function(oldTag,newTag,tiddlers) {
store.suspendNotifications();
for (var i=0;i<tiddlers.length;i++) {
store.setTiddlerTag(tiddlers[i].title,false,oldTag);
store.setTiddlerTag(tiddlers[i].title,true,newTag);
}
store.resumeNotifications();
store.notifyAll();
},
storeMethods: {
saveTiddler_orig_renameTags: TiddlyWiki.prototype.saveTiddler,
saveTiddler: function(title,newTitle,newBody,modifier,modified,tags,fields,clearChangeCount,created,creator) {
if (title != newTitle) {
var tagged = this.getTaggedTiddlers(title);
if (tagged.length > 0) {
if (confirm(config.renameTags.prompts.rename.format([title,newTitle,tagged.length,tagged.length>1?"s":""])))
config.renameTags.renameTag(title,newTitle,tagged);
if (!this.tiddlerExists(title) && newBody == "")
return null;
}
}
return this.saveTiddler_orig_renameTags(title,newTitle,newBody,modifier,modified,tags,fields,clearChangeCount,created,creator);
},
removeTiddler_orig_renameTags: TiddlyWiki.prototype.removeTiddler,
removeTiddler: function(title) {
var tagged = this.getTaggedTiddlers(title);
if (tagged.length > 0)
if (confirm(config.renameTags.prompts.remove.format([title,tagged.length,tagged.length>1?"s":""])))
config.renameTags.removeTag(title,tagged);
return this.removeTiddler_orig_renameTags(title);
}
},
init: function() {
merge(TiddlyWiki.prototype,this.storeMethods);
}
}
config.renameTags.init();
//}}}
//{{{
merge(config.commands,{
saveCloseTiddler: {
text: 'зберегти і закрити',
tooltip: 'Save changes to this tiddler and close it',
handler: function(ev,src,title) {
var closeTitle = title;
var newTitle = story.saveTiddler(title,ev.shiftKey);
if (newTitle)
closeTitle = newTitle;
return config.commands.closeTiddler.handler(ev,src,closeTitle);
}
},
cancelCloseTiddler: {
text: 'скасувати і закрити',
tooltip: 'Undo changes to this tiddler and close it',
handler: function(ev,src,title) {
return config.commands.closeTiddler.handler(ev,src,title);
}
}
});
//}}}
/%
!info
|Name|SetTiddlerBackground|
|Source|http://www.TiddlyTools.com/#SetTiddlerBackground|
|Version|2.0.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|Type|transclusion|
|Description|set tiddler background and font color CSS attributes|
Usage
<<<
{{{
<<tiddler SetTiddlerBackground with: bgstyle fgstyle matchtag class>>
}}}
*''bgstyle'' and ''fgstyle'' (optional, but specify at least one)<br>are CSS background style attributes (most often color values, e.g., #rgb or #rrggbb)
*''matchtag'' (optional)<br>is a tag value that allows selective control of tiddler background/foreground colors
*''class'' (optional)<br>is the class of the tiddler element to which the fgstyle/bgstyle will be applied Default is 'viewer'. Use 'title' to set the background of the tiddler's 'title' area instead of its 'viewer' area.
The bgstyle and fgstyle assignments are only performed if the tiddler has the matching tag (or if no matchtag value is specified). Also, to set either bgstyle or fgstyle (but not both), you can use a dash ('-') as a placeholder for the value you do NOT want to set. For example:
{{{
<<tiddler SetTiddlerBackground with: #F00 - urgent>>
}}}
sets the bgstyle (but NOT the fgstyle) to RED for only those tiddlers tagged with 'urgent'. Also, note that in that instead of using #RGB color definitions, you can also use CSS color keywords (i.e., 'red', 'yellow', 'green') or *any* other valid CSS value that can be applied to the 'background' style attribute. For example, to use a background image for any tiddler tagged with 'wallpaper', you can write:
{{{
<<tiddler SetTiddlerBackground with: url("images/bg.jpg") - wallpaper>>
}}}
You can use this script several times in a row to define a set of tag-to-color mappings, stored in a *single* convenient tiddler (e.g, [[BackgroundColors]]), containing something like this:
{{{
<<tiddler SetTiddlerBackground with: red - urgent>>
<<tiddler SetTiddlerBackground with: yellow - active>>
<<tiddler SetTiddlerBackground with: green - done>>
}}}
To apply the set of tag-based color mappings, embed:
{{{
<<tiddler BackgroundColors>> (in tiddler content) OR
<span macro='tiddler BackgroundColors' style='display:none'></span> (in ViewTemplate, for all tiddlers)
}}}
and then set the desired tag value(s) onto specific tiddlers. To add more color mappings, just edit the [[BackgroundColors]] tiddler and then start tagging tiddlers accordingly.
<<<
!end
!show
<<tiddler {{
if ('$1'!='$'+'1' && '$1'!='-') var bg='$1';
if ('$2'!='$'+'2' && '$2'!='-') var fg='$2';
if ('$3'!='$'+'3' && '$3'!='-') var tag='$3';
if ('$4'!='$'+'4' && '$4'!='-') var c='$4'; else var c='viewer';
var here=story.findContainingTiddler(place);
var t=store.getTiddler(here?here.getAttribute('tiddler'):'');
if (!tag||t&&t.isTagged(tag)) {
var e=here;
if (c!='tiddler') {
var elems=e.getElementsByTagName('*');
for (var i=0; i<elems.length; i++)
if (hasClass(elems[i],c)) { var e=elems[i]; break; }
}
if (e&&bg) { e.style.backgroundImage='none'; e.style.background=bg; }
if (e&&fg) { e.style.color=fg; }
}
'';}}>>
!end
%/<<tiddler {{var src='SetTiddlerBackground'; src+(tiddler&&tiddler.title==src?'##info':'##show');}}
with: [[$1]] [[$2]] [[$3]] [[$4]]>>
| <<search>> |h
| @@font-size:1.5em;Шрифт:@@<br><<fontSize>> |h
| [img(90%,)[Гаряча лінія з питань протидії торгівлі людьми та консультування мігрантів|pict/527.jpg][https://www.527.org.ua/]] |h
| [img(90%,)[Психологічна допомога в ліцеї "Європейський". Психологічна допомога педагогічним працівникам ліцею, учням та їх батькам проводиться щоденно в кабінеті психолога. Години прийому 12:00-16:00|pict/psyhelp.jpg]] |h
| [img(100%,)[Шкільний чат-бот #ПроБулінг допоможе розпізнати ознаки булінгу, пояснить чим відрізняється булінг від конфлікту, що робити, коли тебе булять, а також де шукати допомогу, якщо тебе ображають в кіберпросторі.|pict/tg.png][http://t.me/ProBullyingBot]] |h
| [img(100%,)[Шкільний ютуб-канал|pict/yt1.png][https://www.youtube.com/c/SolarTVLubny]] |h
| [img(100%,)[Ютуб-канал кафедри іноземної мови|pict/yt2.png][https://www.youtube.com/channel/UC1bRlpUzJ6cnKiKPwMMjqCA]] |h
| [img(100%,)[Фейсбук-сторінка|pict/fb.png][https://www.facebook.com/suncity-six]] |h
| [[Літературний сайт Володимира Малика|http://malyk.ho.ua/]] |h
| [[HUMAN - Дистанційне навчання|https://www.human.ua/]] |h
| [[Лубенська міська рада|http://lubnyrada.gov.ua/]] |h
| [[Міністерство освіти і науки України|http://www.mon.gov.ua/]] |h
| [[Український центр оцінювання якості освіти|http://www.testportal.gov.ua/]] |h
| [[Харківський регіональний центр оцінювання якості освіти|https://zno-kharkiv.org.ua/]] |h
| [[Освітній портал|http://www.osvita.org.ua/]] |h
| [[Професійно-технічна освіта в Україні|http://www.proftekhosvita.org.ua]] |h
| [[Вищі навчальні заклади України|http://www.mon.gov.ua/main.php?query=nz]] |h
| [img(100%,)[Державна служба якості освіти|pict/dsyao.jpg][http://www.sqe.gov.ua/]] |h
| [img(100%,)[ГО Ла-Страда|pict/la-strada.jpg][http://la-strada.org.ua/]] |h
| [img(100%,)[Я маю право|pict/pravo.jpg][http://pravo.minjust.gov.ua/]] |h
| [img(100%,)[Безоплатна правова допомога|pict/legalaid.jpg][http://legalaid.gov.ua/]] |h
//{{{
if(!version.extensions.SimpleSearchPlugin) {
version.extensions.SimpleSearchPlugin = { installed: true };
if(!config.extensions) { config.extensions = {}; }
config.extensions.SimpleSearchPlugin = {
heading: "Результати пошуку",
containerId: "searchResults",
btnCloseLabel: "закрити",
btnCloseTooltip: "Відмовитись від перегляду результатів пошуку",
btnCloseId: "search_close",
btnOpenLabel: "Відкрити всі результати",
btnOpenTooltip: "Відкрити всі результати пошуку",
btnOpenId: "search_open",
displayResults: function(matches, query) {
story.refreshAllTiddlers(true);
var el = document.getElementById(this.containerId);
query = '"""' + query + '"""';
if(el) {
removeChildren(el);
} else { //# fallback: use displayArea as parent
var container = document.getElementById("displayArea");
el = document.createElement("div");
el.id = this.containerId;
el = container.insertBefore(el, container.firstChild);
}
var msg = "!" + this.heading + "\n";
if(matches.length > 0) {
msg += "''" + config.macros.search.successMsg.format([matches.length.toString(), query]) + ":''\n";
this.results = [];
for(var i = 0 ; i < matches.length; i++) {
this.results.push(matches[i].title);
msg += "* [[" + matches[i].title + "]]\n";
}
} else {
msg += "''" + config.macros.search.failureMsg.format([query]) + "''"; // XXX: do not use bold here!?
}
createTiddlyButton(el, this.btnCloseLabel, this.btnCloseTooltip, config.extensions.SimpleSearchPlugin.closeResults, "button", this.btnCloseId);
wikify(msg, el);
if(matches.length > 0) {
createTiddlyButton(el, this.btnOpenLabel, this.btnOpenTooltip, config.extensions.SimpleSearchPlugin.openAll, "button", this.btnOpenId);
}
},
closeResults: function() {
var el = document.getElementById(config.extensions.SimpleSearchPlugin.containerId);
removeNode(el);
config.extensions.SimpleSearchPlugin.results = null;
highlightHack = null;
},
openAll: function(ev) {
story.displayTiddlers(null, config.extensions.SimpleSearchPlugin.results);
return false;
}
};
config.shadowTiddlers.StyleSheetSimpleSearch = "/*{{{*/\n" +
"#" + config.extensions.SimpleSearchPlugin.containerId + " {\n" +
"\toverflow: auto;\n" +
"\tpadding: 5px 1em 10px;\n" +
"\tbackground-color: #a2dcde;\n" +
"}\n\n" +
"#" + config.extensions.SimpleSearchPlugin.containerId + " h1 {\n" +
"\tmargin-top: 0;\n" +
"\tborder: none;\n" +
"}\n\n" +
"#" + config.extensions.SimpleSearchPlugin.containerId + " ul {\n" +
"\tmargin: 0.5em;\n" +
"\tpadding-left: 1.5em;\n" +
"}\n\n" +
"#" + config.extensions.SimpleSearchPlugin.containerId + " .button {\n" +
"\tdisplay: block;\n" +
"\tborder-color: blue;\n" +
"\tpadding: 5px;\n" +
"\tbackground-color: [[ColorPalette::TertiaryLight]];\n" +
"}\n\n" +
"#" + config.extensions.SimpleSearchPlugin.containerId + " .button:hover {\n" +
"\tborder-color: [[ColorPalette::SecondaryMid]];\n" +
"\tbackground-color: [[ColorPalette::SecondaryLight]];\n" +
"}\n\n" +
"#" + config.extensions.SimpleSearchPlugin.btnCloseId + " {\n" +
"\tfloat: right;\n" +
"\tmargin: -5px -1em 5px 5px;\n" +
"}\n\n" +
"#" + config.extensions.SimpleSearchPlugin.btnOpenId + " {\n" +
"\tfloat: left;\n" +
"\tmargin-top: 5px;\n" +
"}\n" +
"/*}}}*/";
store.addNotification("StyleSheetSimpleSearch", refreshStyles);
Story.prototype.search = function(text, useCaseSensitive, useRegExp) {
highlightHack = new RegExp(useRegExp ? text : text.escapeRegExp(), useCaseSensitive ? "mg" : "img");
var matches = store.search(highlightHack, null, "excludeSearch");
var q = useRegExp ? "/" : "'";
config.extensions.SimpleSearchPlugin.displayResults(matches, q + text + q);
};
TiddlyWiki.prototype.search = function(searchRegExp, sortField, excludeTag, match) {
var candidates = this.reverseLookup("tags", excludeTag, !!match);
var primary = [];
var secondary = [];
var tertiary = [];
for(var t = 0; t < candidates.length; t++) {
if(candidates[t].title.search(searchRegExp) != -1) {
primary.push(candidates[t]);
} else if(candidates[t].tags.join(" ").search(searchRegExp) != -1) {
secondary.push(candidates[t]);
} else if(candidates[t].text.search(searchRegExp) != -1) {
tertiary.push(candidates[t]);
}
}
var results = primary.concat(secondary).concat(tertiary);
if(sortField) {
results.sort(function(a, b) {
return a[sortField] < b[sortField] ? -1 : (a[sortField] == b[sortField] ? 0 : +1);
});
}
return results;
};
}
//}}}
<<newJournal tag:Нотаток Новина {{config.messages.dates.months[new Date().getMonth()]+new Date().getFullYear()}} {{new Date().getFullYear()}}>> <<saveChanges>>
[img(100%,)[pict/logo6.jpg]]
/* give tiddlers 3d style border and explicit background */
.tiddler {
background: url(pict/TiddlerBG.jpg) top left repeat;
border-right: 4px [[ColorPalette::TertiaryMid]] solid;
border-bottom: 4px [[ColorPalette::TertiaryMid]] solid;
margin-bottom: 1em;
padding:1em 2em 2em 1.5em;
}
#topMenu .button, #topMenu .tiddlyLink, #topMenu a {
margin-left: 0em;
margin-right: 0em;
padding-left: 0px;
padding-right: 0px;
background: transparent;
color: blue;
font-size: 150%;
}
#topMenu .button:hover, #topMenu .tiddlyLink:hover {
background: white;
color: blue;
}
/*Invisible table*/
.viewer .invisibletable table {
border-color: transparent;
}
.viewer .invisibletable table td {
font-size: 1em;
font-family: Verdana;
border-color: transparent;
padding: 10px 10px 10px 10px;
vertical-align: top;
}
.viewer .invisibletable table th {
color: #005566;
background-color: white;
border-color: transparent;
font-family: Verdana;
font-size: 1.2em;
font-weight: bold;
padding: 10px 10px 10px 10px;
vertical-align: top;
}
//{{{
version.extensions.tiddlerList = {major: 2, minor: 3, revision: 0, date: new Date("Jan 08, 2008")};
// template = [header, item, separator, group, footer]
config.macros.tiddlerList={
formats : {list:true, nlist:true, span:true, stack:true, csv:true, table:true},
templates : {
list : [ "%0\n", "* %0\n", "", "%group\n", "%0\n"],
nlist : [ "%0", "# %0\n", "", "%group\n", "%0\n"],
span : [ "%0", "%0", " ", "%group", "%0"],
stack : [ "%0", "%0", "\n", "%group", "%0"],
csv : [ "%0", "%0", ", ", "%0", "%0\n"],
table : ["|!%0|\n", "|%0|\n", "", "|%group|\n", "|%0|\n"]
},
dateFormat : "DD MMM YYYY"
}
if (typeof gCurrentTiddler == 'undefined')
var gCurrentTiddler;
config.macros.tiddlerList.handler = function(place,macroName,params,wikifier,paramString,tiddler)
{
// Some globals
var count=0, groupCount=0, theGroup="", lastGroup="", firstInGroup = false;
var currentTiddler = tiddler;
gCurrentTiddler = tiddler;
var listWikiText="";
var formats = this.formats;
// SQL-Like parameters
var parameters = paramString.parseParams("name",null,true);
var pTags = parameters[0]["tags"]?parameters[0]["tags"][0].split(","):[];
var pOrder = parameters[0]["order"]?parameters[0]["order"][0]:"title";
var pTop = parameters[0]["top"]?parameters[0]["top"][0]:-1;
var pText = parameters[0]["text"]?parameters[0]["text"][0]:"";
var pTitle = parameters[0]["title"]?parameters[0]["title"][0]:"";
var pSearch = parameters[0]["search"]?parameters[0]["search"][0]:"";
var pFilter = parameters[0]["filter"]?parameters[0]["filter"][0]:"";
var pHeader = parameters[0]["header"]?paramFormat(parameters[0]["header"][0]):"";
var pFooter = parameters[0]["footer"]?paramFormat(parameters[0]["footer"][0]):"";
var pGroup = parameters[0]["group"]?parameters[0]["group"][0]:"";
var pDateFormat = parameters[0]["dateFormat"]?parameters[0]["dateFormat"][0]:this.dateFormat;
var pCustomParameter = parameters[0]["customParameter"]?parameters[0]["customParameter"][0]:"";
var pFormat = parameters[0]["format"]?parameters[0]["format"][0]:"list";
pFormat = formats[pFormat]?pFormat:"list"
// Separator
var pSeparator = parameters[0]["separator"]?paramFormat(parameters[0]["separator"][0]):(parameters[0]["seperator"]?paramFormat(parameters[0]["seperator"][0]):this.templates[pFormat][2])
// Template for group
var pGroupTemplate = this.templates[pFormat][3];
if (parameters[0]["groupTemplate"])
pGroupTemplate = paramFormat(parameters[0]["groupTemplate"][0])
pGroupTemplate = pGroupTemplate.replace("$))", ">>")
// Template for group footer
var pGroupFooterTemplate = "";
if (parameters[0]["groupFooterTemplate"])
pGroupFooterTemplate = paramFormat(parameters[0]["groupFooterTemplate"][0])
pGroupFooterTemplate = pGroupFooterTemplate.replace("$))", ">>")
// Template for item
var pItemTemplate = this.templates[pFormat][1];
if (parameters[0]["itemTemplate"])
pItemTemplate = paramFormat(parameters[0]["itemTemplate"][0])
pItemTemplate = pItemTemplate.replace("$))", ">>").replace("%link", "%0").replace("%item", "%1").replace("%abstract", "%2").replace("%text", "%3").replace("%created", "%4").replace("%modified", "%5").replace("%modifier", "%6").replace("%group", "%7").replace("%title", "%8").replace("%tags", "%9").replace("%nolink", "%10").replace("%custom", "%11")
// Template for footer
var pFooterTemplate = this.templates[pFormat][4].replace("%count", "%1")
// Get all tiddlers
var tiddlers = store.reverseLookup("tags","excludeLists",false);
// Sorting
if(!pOrder)
pOrder = "title";
if (pOrder.match(/^\-/i)) {
pOrder = pOrder.substr(1)
var sortDesc = true;
}
// Sorting on a standard field
if (pOrder.match(/(title)|(text)|(modifier)|(modified)|(created)|(tags)/))
if (sortDesc)
tiddlers.sort(function (a,b) {if(a[pOrder] == b[pOrder]) return(0); else return (a[pOrder] > b[pOrder]) ? -1 : +1; });
else
tiddlers.sort(function (a,b) {if(a[pOrder] == b[pOrder]) return(0); else return (a[pOrder] < b[pOrder]) ? -1 : +1; });
else
if (sortDesc)
tiddlers.sort(function (a,b) {if(a.fields[pOrder] == b.fields[pOrder]) return(0); else return (a.fields[pOrder] > b.fields[pOrder]) ? -1 : +1; });
else
tiddlers.sort(function (a,b) {if(a.fields[pOrder] == b.fields[pOrder]) return(0); else return (a.fields[pOrder] < b.fields[pOrder]) ? -1 : +1; });
// Header
if (pHeader)
listWikiText += formatItem(this.templates[pFormat][0], [pHeader], pFormat)
for(var t=0; t<tiddlers.length; t++) {
tiddler = tiddlers[t];
if (pText!="" && tiddler.text=="") tiddler.text=store.getValue(tiddler, 'text')
if (pTop==-1 || count<pTop) {
if (pText=="" || tiddler.text.match(pText)) {
if (pTitle=="" || tiddler.title.match(pTitle)) {
if (pSearch=="" || (tiddler.title.match(pSearch) || tiddler.text.match(pSearch))) {
if (pFilter=="" || eval(pFilter)) {
if (pTags.length==0 || compareArrays(tiddler.tags, pTags, "all")) {
count++;
if (tiddler.text=="") tiddler.text=store.getValue(tiddler, 'text')
// Grouping
if (pGroup) {
theGroup = eval(pGroup);
if(theGroup != lastGroup) {
groupCount++;firstInGroup = true;
if (pGroupFooterTemplate && groupCount>1)
listWikiText += pGroupFooterTemplate.replace("%group", theGroup)
listWikiText += pGroupTemplate.replace("%group", theGroup)
lastGroup = theGroup;
} else
firstInGroup = false;
}
// Separators
if (count>1 && !firstInGroup) listWikiText += pSeparator;
//Plaintext title
var noLink = tiddler.title.match(config.textPrimitives.wikiLink)?"~" + tiddler.title:tiddler.title;
// Custom parameter
if (pCustomParameter)
var custom="";
try {
custom = eval(pCustomParameter)
} catch (e) {}
// List individual tiddler
if (!parameters[0]["debug"])
var strItem = formatItem(pItemTemplate,["[[" + tiddler.title + "]]",count,tiddler.text.substr(0,tiddler.text.search("\n")),tiddler.text,tiddler.created.formatString(pDateFormat),tiddler.modified.formatString(pDateFormat),tiddler.modifier,theGroup,tiddler.title,tiddler.tags.join(" "),noLink,custom], pFormat)
else
var strItem = formatItem(pItemTemplate,["[[Читати повністю|" + tiddler.title + "]]",count,tiddler.text.substr(0,tiddler.text.search("\n")),tiddler.text,tiddler.created.formatString(pDateFormat),tiddler.modified.formatString(pDateFormat),tiddler.modifier,theGroup,tiddler.title,tiddler.tags.join(" "),noLink,custom], pFormat)
for (var fld in tiddler.fields) strItem = strItem.replace('%field.' + fld, tiddler.fields[fld]);
listWikiText += strItem
}
}
}
}
}
}
}
// Last group footer
if (pGroup && pGroupFooterTemplate && count>0)
listWikiText += pGroupFooterTemplate.replace("%group", theGroup)
// Footer
if (pFooter) {
pFooter = pFooter.replace("%count", count)
listWikiText += formatItem(pFooterTemplate, [pFooter], pFormat)
}
// Render result
wikify(listWikiText,place, null, currentTiddler)
// Local functions
function paramFormat(param) {
// Allow "\n" in non evalled parameters
return param.replace(/\\n/g, "\n");
}
function formatItem(template, values, format) {
// Fill template with values (depending on list format)
if (format.match(/table/) && values[0].match(/\|/))
return ("%0\n").format(values)
else
return template.format(values)
}
function compareArrays(array, values, logic) {
// Compare items in array with AND("all") or OR("any") logic
var matches=0;
for(var v=0; v<values.length; v++)
if(values[v].replace(/^\s+|\s+$/g,"").match(/^\-/) && !array.contains(values[v].replace(/^\s+|\s+$/g,"").substr(1)))
matches++;
else if (array.contains(values[v]))
matches++;
return ((logic=="all" && matches==values.length) || (logic!="all" && matches>0))
}
}
String.prototype.prettyTrim = function(len,prefix,postfix) {
var result = this.trim().replace(/\r\n/g,' ').replace(/\n/g,' ');
if (!prefix) prefix = '';
if (!postfix) postfix = '';
if (result.length > len - 3)
return prefix + result.substr(0,len) + '...' + postfix;
else if (result.length > 0)
return prefix + result + postfix;
else
return result;
}
//}}}
//{{{
config.messages.dates.months = ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];
config.messages.dates.days = ["Неділя","Понеділок","Вівторок","Середа","Четвер","П`ятница","Субота"];
config.messages.dates.shortMonths = ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру"];
config.messages.dates.shortDays = ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"];
config.messages.dates.daySuffixes = [
"-е","-е","-е","-е","-е","-е","-е","-е","-е","-е",
"-е","-е","-е","-е","-е","-е","-е","-е","-е","-е",
"-е","-е","-е","-е","-е","-е","-е","-е","-е","-е",
"-е"];
config.messages.dates.am = "ранку";
config.messages.dates.pm = "дня";
merge(config.macros.search,{
label: "Пошук по сайту ",
prompt: "Пошук по матеріалах сайту",
accessKey: "F",
successMsg: "Знайдено %0 нотатків з текстом %1",
failureMsg: "Не знайдено жодного нотатку з текстом %0"});
merge(config.macros.timeline,{
dateFormat: "0DD.0MM.YYYY"});
merge(config.macros.saveChanges,{
label: " Зберегти зміни",
prompt: "",
accessKey: "S"});
merge(config.macros.newJournal,{
label: " Створити нотаток ",
prompt: "Створити новий нотаток з поточною датою",
accessKey: "J"});
merge(config.macros.options,{
wizardTitle: "Расширенные пункты настройки",
step1Title: "Эти настройки Ваша программа просмотра сохраняет с помощью cookies",
step1Html: "<input type='hidden' name='markList'></input><br><input type='checkbox' checked='false' name='chkUnknown'>Показать настройки без описания</input>",
unknownDescription: "//(unknown)//",
listViewTemplate: {
columns: [
{name: 'Option', field: 'option', title: "Возможности", type: 'String'},
{name: 'Description', field: 'description', title: "Описание", type: 'WikiText'},
{name: 'Name', field: 'name', title: "Имя", type: 'String'}],
rowClasses: [{className: 'lowlight', field: 'lowlight'} ]}
});
merge(config.macros.annotations,{});
merge(config.commands.closeTiddler,{
text: "",
tooltip: "Закрити цей нотаток"});
merge(config.commands.closeOthers,{
text: "закрыти інші",
tooltip: "Закрити всі інші нотатки"});
merge(config.commands.editTiddler,{
text: "правка",
tooltip: "Виправити цей нотаток",
readOnlyText: "переглянути",
readOnlyTooltip: "Перегляд коду цього нотатку"});
merge(config.commands.saveTiddler,{
text: "зберегти",
tooltip: "Зберегти зміни"});
merge(config.commands.cancelTiddler,{
text: "скасувати",
tooltip: "Скасувати зміни у цьому нотатку",
warning: "Ви дійсно впевнені, що готові втратити всі Ваші зміни нотатку '%0'?",
readOnlyText: "повернутися",
readOnlyTooltip: "Перегляд цього нотатку у нормальному режимі"});
merge(config.commands.deleteTiddler,{
text: "",
tooltip: "Видалити цей нотаток",
warning: "Ви впевнені, що хочете видалити нотаток '%0'?"});
merge(config.commands.jump,{
text: "",
tooltip: "Перехід на інший відкритий нотаток"});
//}}}</search></calendar></calendar></tabs>
//{{{
//replaces toolbar buttons with icons.
//for each command that you want to use an icon, add a line like the following in a systemConfig tiddler, specifying the icon image location:
//config.commands.editTiddler.imgLoc= "jump.bmp";
//No need to edit the ViewTemplate! If an image location is specified, then the icon will be used for that command!
config.macros.toolbar.createCommand = function(place,commandName,tiddler,theClass)
{
if(typeof commandName != "string")
{
var c = null;
for(var t in config.commands)
if(config.commands[t] == commandName)
c = t;
commandName = c;
}
if((tiddler instanceof Tiddler) && (typeof commandName == "string"))
{
var title = tiddler.title;
var command = config.commands[commandName];
var ro = tiddler.isReadOnly();
var shadow = store.isShadowTiddler(title) && !store.tiddlerExists(title);
var text = ro && command.readOnlyText ? command.readOnlyText : command.text;
var tooltip = ro && command.readOnlyTooltip ? command.readOnlyTooltip : command.tooltip;
if((!ro || (ro && !command.hideReadOnly)) && !(shadow && command.hideShadow))
{
var btn = createTiddlyButton(null,text,tooltip,this.onClickCommand);
btn.setAttribute("commandName", commandName);
btn.setAttribute("tiddler", title);
if(theClass)
addClass(btn,theClass);
place.appendChild(btn);
if(command.imgLoc)
btn.innerHTML = "<img src='"+command.imgLoc+"'>";
}
}
}
setStylesheet(".toolbarImg {vertical-align: middle; cursor:pointer;}\n","commandIconStyles");
//}}}
//{{{
config.macros.emptyTrash =
{
tag: "Кошик",
movedMsg: "Нотаток '%0' був перенесений у %1",
label: "Очистити кошик",
tooltip: "Видалити нотатки, відмічені як %0, старші за %1 дні",
emptyMsg: "Кошик порожній.",
noneToDeleteMsg: "Нотатків, старших за %0 дні, не знайдено.",
confirmMsg: "Будуть видалені наступні нотатки:\n\n'%0'\n\nПродовжити?",
deletedMsg: "Видалено: '%0'",
handler: function ( place,macroName,params,wikifier,paramString,tiddler )
{
var namedParams = (paramString.parseParams(daysOld))[0];
var daysOld = namedParams['daysOld'] ? namedParams['daysOld'][0] : 0; // default
var buttonTitle = namedParams['title'] ? namedParams['title'][0] : this.label;
createTiddlyButton ( place, buttonTitle, this.tooltip.format([ config.macros.emptyTrash.tag,daysOld ]),
this.emptyTrash( daysOld ));
},
emptyTrash: function( daysOld )
{
return function()
{
var collected = [];
var compareDate = new Date();
compareDate.setDate( compareDate.getDate() - daysOld );
store.forEachTiddler(function ( title,tiddler )
{
if ( tiddler.tags.contains( config.macros.emptyTrash.tag ) && tiddler.modified < compareDate )
collected.push( title );
});
if ( collected.length == 0 )
{
if ( daysOld == 0 )
displayMessage( config.macros.emptyTrash.emptyMsg );
else
displayMessage( config.macros.emptyTrash.emptyMsg.format( [daysOld] ) );
}
else {
if ( confirm( config.macros.emptyTrash.confirmMsg.format( [collected.join( "', '" )] ) ) )
{
for ( var i=0;i<collected.length;i++ )
{
store.removeTiddler( collected[i] );
displayMessage( config.macros.emptyTrash.deletedMsg.format( [collected[i]] ) );
}
}
}
// remove Trash tiddler if no trash remains
if ( store.getTaggedTiddlers( config.macros.emptyTrash.tag ).length == 0 ) {
story.closeTiddler( config.macros.emptyTrash.tag,true,false);
store.removeTiddler( config.macros.emptyTrash.tag );
}
else
story.refreshTiddler( config.macros.emptyTrash.tag,false,true );
store.setDirty( true );
}
}
}
////////////////// hijack delete command
config.macros.emptyTrash.orig_deleteTiddler_handler = config.commands.deleteTiddler.handler;
config.commands.deleteTiddler.handler = function( event,src,title )
{
// if tiddler exists (i.e., not a NEW, unsaved tiddler in edit mode) and not bypassing Trash (holding CTRL key)
if ( store.tiddlerExists( title ) && !event.ctrlKey )
{
// if Trash tiddler doesn't exist yet, create it now...
if (!store.tiddlerExists( config.macros.emptyTrash.tag ))
store.saveTiddler( config.macros.emptyTrash.tag,config.macros.emptyTrash.tag,
"<<emptyTrash>>","TrashPlugin",new Date(),null );
// set tags on tiddler
store.setTiddlerTag( title,1,config.macros.emptyTrash.tag );
store.setTiddlerTag( title,1,"excludeMissing" );
var tiddler=store.fetchTiddler(title);
if (tiddler.tags.contains( "systemConfig" ))
store.setTiddlerTag( title,1,"systemConfigDisable" );
// close tiddler, autosave file (if set), and give user feedback
story.closeTiddler( title,true,event.shiftKey || event.altKey );
if( config.options.chkAutoSave )
saveChanges();
displayMessage(config.macros.emptyTrash.movedMsg.format( [ title,config.macros.emptyTrash.tag ] ));
}
else {
config.macros.emptyTrash.orig_deleteTiddler_handler.apply( this, arguments );
}
story.refreshTiddler( config.macros.emptyTrash.tag,false,true );
return false;
};
//}}}
!<<view title link>> @@color:green;(<<view created date>>)@@
<<view text wikified>>
//{{{
version.extensions.YouTubeVideoDisplayPlugin = { major:1, minor:0, revision:6, date:new Date(2012,06,01), source:"http://tiddlywiki.secret-hq.com/#YouTubeVideoDisplayPlugin" };
//}}}
//{{{
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] = "/*{{{*/"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += ".ytvdRight {"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " float:right;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " text-align:right;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " margin:8px;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += "}"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += "\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += ".ytvdLeft {"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " float:left;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " text-align:left;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " margin:8px;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += "}"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += "\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += ".ytvdCenter {"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " margin:8px auto;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += " text-align:center;"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += "}"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_StyleSheet"] += "/*}}}*/";
//}}}
//{{{
store.addNotification("YouTubeVideoDisplayPlugin_StyleSheet",refreshStyles);
//}}}
//{{{
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] = "<html>";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<div class=\"$youtubeVideoDisplayClass\">"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<!--VIDEO EMBED CODE-->"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<object width=\"$youtubeVideoWidth\" height=\"$youtubeVideoHeight\">"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<param name=\"movie\" value=\"http://www.youtube.com/v/"+"$youtubeVideoID"+"?version=3"+"&hl=en&fs=1&border=1\"></param>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<param name=\"allowFullScreen\" value=\"true\"></param>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<param name=\"allowscriptaccess\" value=\"always\"></param>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<embed src=\"http://www.youtube.com/v/"+"$youtubeVideoID"+"?version=3"+"$youtubeAutostartString"+"$youtubeStartTimeString"+"$youtubePlayerColor1String$"+"$youtubePlayerColor2String"+"&hl=en&fs=1&border=0\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"$youtubeVideoWidth\" height=\"$youtubeVideoHeight\"></embed>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "</object>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<!--/VIDEO EMBED CODE-->"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<br>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "<a href=\"http://www.youtube.com/watch?v="+"$youtubeVideoID"+"$youtubeStartTimeURLString"+"\" target=\"_blank\">"+"Дивитись на YouTube"+"</a>"+"\n";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "</div>";
config.shadowTiddlers["YouTubeVideoDisplayPlugin_Player"] += "</html>";
//}}}
//{{{
config.macros.youtube = {}
config.macros.youtube.handler = function(place,macroName,params,wikifier,paramString,tiddler) {
var parsedParams = paramString.parseParams('anon',null,true,false,false);
var youtubeVideoID = params[0];
var youtubeAspectRatio = getParam(parsedParams,"aspect","");
if ((youtubeAspectRatio == '') || (youtubeAspectRatio == 'null')) {
var youtubeAspectRatio = getParam(parsedParams,"a","");
}
if ((youtubeAspectRatio == '') || (youtubeAspectRatio == 'null')) {
var youtubeAspectRatio = getParam(parsedParams,"r","");
}
if ((youtubeAspectRatio == '') || (youtubeAspectRatio == 'null')) {
var youtubeAspectRatio = 'widescreen';
}
var regexpAspectStandard = /^s.*?|4.*?$/i;
var regexpAspectWide = /^w.*?|16.*?$/i;
if (regexpAspectStandard.test(youtubeAspectRatio)) {
var youtubeAspectRatio = 'standard';
}
else if (regexpAspectWide.test(youtubeAspectRatio)) {
var youtubeAspectRatio = 'widescreen';
}
else {
var youtubeAspectRatio = 'widescreen';
}
var regexpIsNumeric = /^[0-9]+$/i;
var youtubeVideoWidth = getParam(parsedParams,"width","");
if ((youtubeVideoWidth == '') || (youtubeVideoWidth == 'null')) {
var youtubeVideoWidth = getParam(parsedParams,"w","");
}
if (!regexpIsNumeric.test(youtubeVideoWidth)) {
var youtubeVideoWidth = '';
}
var youtubeVideoHeight = getParam(parsedParams,"height","");
if ((youtubeVideoHeight == '') || (youtubeVideoHeight == 'null')) {
var youtubeVideoHeight = getParam(parsedParams,"h","");
}
if (!regexpIsNumeric.test(youtubeVideoHeight)) {
var youtubeVideoHeight = '';
}
if ((youtubeVideoWidth != '') && (youtubeVideoHeight == '')) {
if (youtubeAspectRatio == 'standard') {
var youtubeVideoHeight = youtubeVideoWidth * 3 / 4;
}
else if (youtubeAspectRatio == 'widescreen') {
var youtubeVideoHeight = youtubeVideoWidth * 9 / 16;
}
}
else if ((youtubeVideoWidth == '') && (youtubeVideoHeight != '')) {
if (youtubeAspectRatio == 'standard') {
var youtubeVideoWidth = youtubeVideoHeight * 4 / 3;
}
else if (youtubeAspectRatio == 'widescreen') {
var youtubeVideoWidth = youtubeVideoHeight * 16 / 9;
}
}
else if ((youtubeVideoWidth == '') && (youtubeVideoHeight == '')) {
if (youtubeAspectRatio == 'standard') {
var youtubeVideoWidth = '366';
var youtubeVideoHeight = '275';
}
else if (youtubeAspectRatio == 'widescreen') {
var youtubeVideoWidth = '400';
var youtubeVideoHeight = '225';
}
}
var youtubeVideoAlignment = getParam(parsedParams,"align","");
if ((youtubeVideoAlignment == '') || (youtubeVideoAlignment == 'null')) {
var youtubeVideoAlignment = getParam(parsedParams,"float","");
}
if ((youtubeVideoAlignment == '') || (youtubeVideoAlignment == 'null')) {
var youtubeVideoAlignment = getParam(parsedParams,"f","");
}
if ((youtubeVideoAlignment == '') || (youtubeVideoAlignment == 'null')) {
var youtubeVideoAlignment = getParam(parsedParams,"a","");
}
var regexpRight = /^r.*?|>$/i;
var regexpLeft = /^l.*?|<$/i;
var regexpCenter = /^c.*?|-$/i;
if (regexpRight.test(youtubeVideoAlignment)) {
var youtubeVideoDisplayClass = 'ytvdRight';
}
else if (regexpLeft.test(youtubeVideoAlignment)) {
var youtubeVideoDisplayClass = 'ytvdLeft';
}
else if (regexpCenter.test(youtubeVideoAlignment)) {
var youtubeVideoDisplayClass = 'ytvdCenter';
}
else { // DEFAULT ALIGNMENT IS RIGHT IF NOTHING ELSE IS SPECIFIED
var youtubeVideoDisplayClass = 'ytvdRight';
}
var youtubeAutostart = getParam(parsedParams,"autostart","");
if ((youtubeAutostart == '') || (youtubeAutostart == 'null')) {
var youtubeAutostart = getParam(parsedParams,"autoplay","");
}
if ((youtubeAutostart == '') || (youtubeAutostart == 'null')) {
var youtubeAutostart = getParam(parsedParams,"auto","");
}
var regexpYes = /^ye?s?|1$/i;
var regexpNo = /^no?|0$/i;
if (regexpYes.test(youtubeAutostart)) {
var youtubeAutostart = '1';
}
else if (regexpNo.test(youtubeAutostart)) {
var youtubeAutostart = '0';
}
else {
var youtubeAutostart = '';
}
if (youtubeAutostart != '' || 'null') {
var youtubeAutostartString = "&autoplay="+youtubeAutostart;
}
else {
var youtubeAutostartString = '';
}
var youtubeStartTime = getParam(parsedParams,"time","");
if ((youtubeStartTime == '') || (youtubeStartTime == 'null')) {
var youtubeStartTime = getParam(parsedParams,"at","");
}
if ((youtubeStartTime == '') || (youtubeStartTime == 'null')) {
var youtubeStartTime = getParam(parsedParams,"t","");
}
if ((youtubeStartTime == '') || (youtubeStartTime == 'null')) {
var youtubeStartTime = getParam(parsedParams,"start","");
}
if ((youtubeStartTime == '') || (youtubeStartTime == 'null')) {
var youtubeStartTime = getParam(parsedParams,"s","");
}
if (!regexpIsNumeric.test(youtubeStartTime)) {
var youtubeStartTime = '';
}
if ((youtubeStartTime != '') && (youtubeStartTime != 'null')) {
var youtubeStartTimeString = "&start="+youtubeStartTime;
var youtubeStartTimeURLString = "#at="+youtubeStartTime;
}
else {
var youtubeStartTimeString = '';
var youtubeStartTimeURLString = '';
}
var youtubePlayerColor1 = store.getTiddlerText("ColorPalette::PrimaryDark","");
var youtubePlayerColor2 = store.getTiddlerText("ColorPalette::PrimaryLight","");
var regexpHexShort = /^#([0-9A-Za-z]{3})$/i;
if (youtubePlayerColor1 != '') {
if (!regexpHexShort.test(youtubePlayerColor1)) {
var youtubePlayerColor1 = youtubePlayerColor1.replace(/^#([0-9A-Za-z]+)$/g,"$1");
}
else if (regexpHexShort.test(youtubePlayerColor1)) {
var youtubePlayerColor1 = youtubePlayerColor1.replace(/^#(.)(.)(.)$/g,"$1$1$2$2$3$3");
}
var youtubePlayerColor1String = "&color1=0x"+youtubePlayerColor1;
}
else {
var youtubePlayerColor1String = '';
}
if (youtubePlayerColor2 != '') {
if (!regexpHexShort.test(youtubePlayerColor2)) {
var youtubePlayerColor2 = youtubePlayerColor2.replace(/^#([0-9A-Za-z]+)$/g,"$1");
}
else if (regexpHexShort.test(youtubePlayerColor2)) {
var youtubePlayerColor2 = youtubePlayerColor2.replace(/^#(.)(.)(.)$/g,"$1$1$2$2$3$3");
}
var youtubePlayerColor2String = "&color2=0x"+youtubePlayerColor2;
}
else {
var youtubePlayerColor2String = '';
}
var tid = 'YouTubeVideoDisplayPlugin_Player';
var txt = store.getTiddlerText(tid,'');
wikify(txt.replace(/\$youtubeVideoID/g,youtubeVideoID).replace(/\$youtubeVideoWidth/g,youtubeVideoWidth).replace(/\$youtubeVideoHeight/g,youtubeVideoHeight).replace(/\$youtubeVideoDisplayClass/g,youtubeVideoDisplayClass).replace(/\$youtubeAutostartString/g,youtubeAutostartString).replace(/\$youtubeStartTimeString/g,youtubeStartTimeString).replace(/\$youtubeStartTimeURLString/g,youtubeStartTimeURLString).replace(/\$youtubePlayerColor1String/g,youtubePlayerColor1String).replace(/\$youtubePlayerColor2String/g,youtubePlayerColor2String),place);
}
//}}}
!List1
''Засідання атестаційної комісії №1''
#Ознайомлення з Наказом про створення атестаційної комісії І рівня на 2023/24 н.р.
#Розподіл обов’язків між членами атестаційної комісії
#Обговорення Положення про атестацію (Наказ МОН України № 805 від 09.09.2022 р.)
#Затвердження плану роботи атестаційної комісії
#Затвердження графіка роботи атестаційної комісії
!end
!List2
''Засідання атестаційної комісії №2''
#Затвердження списків педагогічних працівників, які атестуються у 2023/2024 навчальному році
#Затвердження строків проведення атестації педагогічних працівників
#Затвердження електронної адреси для подання атестаційних документів
#Ознайомлення педпрацівників, що атестуються з нормативною базою, щодо проходження атестації
#Затвердження графіку та відповідальних за вивчення практичного досвіду окремих педпрацівників, які атестуються
!end
!List3
''Засідання атестаційної комісії №3''
#Уточнення і затвердження списків педагогічних працівників, які виявили бажання пройти позачергову атестацію
#Обговорення навчально-методичних матеріалів про професійні досягнення педагогічних працівників, які атестуються у 2023/2024 навчальному році
#Перевірка та затвердження результатів підвищення кваліфікації педпрацівників (за атестаційний період)
!end
!List4
''Засідання атестаційної комісії №4''
#Розгляд атестаційних листів педагогічних працівників
#Прийняття рішень про результати атестації педагогічних працівників
#Підсумок роботи атестаційної комісії І рівня
!end
Сьогодні для учнів 10 - В класу Академічного ліцею "Європейський" відбулася важлива виховна година "Ми віримо в ПЕРЕМОГУ"🇺🇦
Під час заходу діти переглянули відео, яке нагадало про жахіття війни, згадали ранок 24 лютого 2022 року, що назавжди змінив кожного українця, висловили щиру подяку нашим захисникам, які щодня ризикують життям заради світлого майбутнього, ушанували пам'ять загиблих героїв.
Десятикласники поділилися мріями про мирне майбутнє для себе та своєї країни.
Ця виховна година стала не лише моментом пам'яті, а й часом для роздумів про цінність миру, свободи та єдності. Ми віримо в нашу перемогу!💙💛
<html>
<a href="news/2025/02/10v/01.jpg" rel="iLoad|10v022025"><img src="news/2025/02/10v/_01.jpg"/></a>
<a href="news/2025/02/10v/02.jpg" rel="iLoad|10v022025"><img src="news/2025/02/10v/_02.jpg"/></a>
<a href="news/2025/02/10v/03.jpg" rel="iLoad|10v022025"><img src="news/2025/02/10v/_03.jpg"/></a>
<a href="news/2025/02/10v/04.jpg" rel="iLoad|10v022025"><img src="news/2025/02/10v/_04.jpg"/></a>
<a href="news/2025/02/10v/05.jpg" rel="iLoad|10v022025"><img src="news/2025/02/10v/_05.jpg"/></a>
<a href="news/2025/02/10v/06.jpg" rel="iLoad|10v022025"><img src="news/2025/02/10v/_06.jpg"/></a>
</html>
Ранок 24 лютого 2022 року життя українців розділив на «до» та «після». Після паніки, незрозумілості та страху кожен мешканець країни почав ставати незламними та нескореним завдяки нашим ВОЇНАМ.
Сьогодні – третя річниця початку повномасштабної війни, і цей день залишиться назавжди не тільки в історії, але й у пам’яті.
Для учнів 8 – Г класу Академічного ліцею "Європейський" (класний керівник Наталія Ганага) проведена виховна година «Три роки незламності: вистояли – переможемо!» Під час обговорення школярі поділилися власними думками про внесок кожного в перемогу, а також розповіли про волонтерські ініціативи, у яких вони беруть участь.
Виховна година стала великим нагадуванням про ціну свободи та наявність єдності в боротьбі за майбутнє.
<html>
<a href="news/2025/02/8g/01.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_01.jpg"/></a>
<a href="news/2025/02/8g/02.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_02.jpg"/></a>
<a href="news/2025/02/8g/03.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_03.jpg"/></a>
<a href="news/2025/02/8g/04.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_04.jpg"/></a>
<a href="news/2025/02/8g/05.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_05.jpg"/></a>
<a href="news/2025/02/8g/06.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_06.jpg"/></a>
<a href="news/2025/02/8g/07.jpg" rel="iLoad|8g022025"><img src="news/2025/02/8g/_07.jpg"/></a>
</html>
24 лютого 2025 року Україна відзначає третю річницю повномасштабного вторгнення Росії. Ця дата стала символом незламності нашого народу та боротьби за свободу й незалежність. Протягом трьох років українці демонструють мужність і стійкість, захищаючи свою землю від агресора.
У цей день учні 6-Б класу Академічного ліцею "Європейський" (класний керівник Наталія Мішкова) ушанували пам’ять загиблих військових і цивільних, які віддали життя за майбутнє держави. Переглянувши відео, діти пригадали, як мирні мешканці нашої країни зустріли цей день три роки тому й скільки неймовірно тяжких випробувань нам усім довелося пережити за 1097 днів війни. Ми дякуємо Збройним силам за їхній героїзм та самопожертву. Попри всі труднощі, Україна продовжує свій шлях до перемоги, згуртовуючи весь світ у цій боротьбі.
<html>
<a href="news/2025/02/6b/01.jpg" rel="iLoad|6b022025"><img src="news/2025/02/6b/_01.jpg"/></a>
<a href="news/2025/02/6b/02.jpg" rel="iLoad|6b022025"><img src="news/2025/02/6b/_02.jpg"/></a>
</html>
Українська мова – це не тільки засіб спілкування, але й наша культурна спадщина, історія та ідентичність. Міжнародний день рідної мови, який відзначається щороку 21 лютого, є чудовою нагодою підкреслити важливість збереження та популяризації української мови.
Учні Академічного ліцею "Європейський" долучилися до цього свята, продемонструвавши свою любов та повагу до рідної мови. Різноманітні заходи, які були організовані на уроках, сприяли поглибленню знань учнів про українську мову, її історію та значення.
Десятикласники, створюючи постери та переглядаючи відео, мали змогу не тільки розширити свій словниковий запас, але й дізнатися більше про цікаві факти з історії української мови. Ігри, у які вони грали, сприяли розвитку їхньої мовної інтуїції та креативності. Одинадцятикласники Академічного ліцею " Європейський", працюючи зі змінами до нового правопису, змогли не тільки удосконалити свої знання правил, але й зрозуміли, чому ці зміни є важливими для розвитку мови. Гра Kahoot допомогла їм у цікавій формі закріпити отримані знання, а подарунки-підказки стануть у пригоді в майбутньому для успішного складанння НМТ
Збереження та розвиток української мови – це обов'язок кожного з нас. Адже мова – це не тільки засіб спілкування, але й наша ідентичність, наша історія та наше майбутнє.
<html>
<a href="news/2025/02/ridna/01.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_01.jpg"/></a>
<a href="news/2025/02/ridna/02.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_02.jpg"/></a>
<a href="news/2025/02/ridna/03.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_03.jpg"/></a>
<a href="news/2025/02/ridna/04.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_04.jpg"/></a>
<a href="news/2025/02/ridna/05.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_05.jpg"/></a>
<a href="news/2025/02/ridna/06.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_06.jpg"/></a>
<a href="news/2025/02/ridna/07.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_07.jpg"/></a>
<a href="news/2025/02/ridna/08.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_08.jpg"/></a>
<a href="news/2025/02/ridna/09.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_09.jpg"/></a>
<a href="news/2025/02/ridna/10.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_10.jpg"/></a>
<a href="news/2025/02/ridna/11.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_11.jpg"/></a>
<a href="news/2025/02/ridna/12.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_12.jpg"/></a>
<a href="news/2025/02/ridna/13.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_13.jpg"/></a>
<a href="news/2025/02/ridna/14.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_14.jpg"/></a>
<a href="news/2025/02/ridna/15.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_15.jpg"/></a>
<a href="news/2025/02/ridna/16.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_16.jpg"/></a>
<a href="news/2025/02/ridna/17.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_17.jpg"/></a>
<a href="news/2025/02/ridna/18.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_18.jpg"/></a>
<a href="news/2025/02/ridna/19.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_19.jpg"/></a>
<a href="news/2025/02/ridna/20.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_20.jpg"/></a>
<a href="news/2025/02/ridna/21.jpg" rel="iLoad|ridna022025"><img src="news/2025/02/ridna/_21.jpg"/></a>
</html>
<tabs K>
<tab 2025 рік>
<<tiddlerList tags:2025 order:-created group:"tiddler.created.formatString('MMM YYYY року')">>
</tab>
<tab 2024 рік>
<<tiddlerList tags:2024 order:-created group:"tiddler.created.formatString('MMM YYYY року')">>
</tab>
<tab 2023 рік>
<<tiddlerList tags:2023 order:-created group:"tiddler.created.formatString('MMM YYYY року')">>
</tab>
<tab 2022 рік>
<<tiddlerList tags:2022 order:-created group:"tiddler.created.formatString('MMM YYYY року')">>
</tab>
<tab 2021 рік>
<<tiddlerList tags:2021 order:-created group:"tiddler.created.formatString('MMM YYYY року')">>
</tab>
</tabs>
У березневі дні вся Україна вшановує Великого Кобзаря. Слова Тараса Шевченка, що лунають крізь століття, надихають, закликають боротися і вірити.
Сьогодні учні дев’ятих класів Академічного ліцею " Європейський" відвідали літературну зустріч «Кобзареве слово, наче пісня». Згадували життя і творчість Шевченка, читали спогади його сучасників, декламували вірші. Адже справжній Шевченко – не лише пам’ятник чи сторінки книги, а він живий у кожному, хто бореться за Україну й вірить у її світле майбутнє.
Коли читаємо "І на оновленій землі врага не буде, супостата", ми знаємо, що цей день настане. Коли повторюємо "Борітеся – поборете", ми впевнені: перемога буде за нами!
Шевченкове слово – це дороговказ. Читаймо, бережімо, пам’ятаймо творчість Генія!
<html>
<a href="news/2025/03/shev/01.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_01.jpg"/></a>
<a href="news/2025/03/shev/02.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_02.jpg"/></a>
<a href="news/2025/03/shev/03.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_03.jpg"/></a>
<a href="news/2025/03/shev/04.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_04.jpg"/></a>
<a href="news/2025/03/shev/05.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_05.jpg"/></a>
<a href="news/2025/03/shev/06.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_06.jpg"/></a>
<a href="news/2025/03/shev/07.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_07.jpg"/></a>
<a href="news/2025/03/shev/08.jpg" rel="iLoad|shev032025"><img src="news/2025/03/shev/_08.jpg"/></a>
</html>
Як зберегти зір школярам: поради щодо освітлення та захисту очей
Зір відіграє надзвичайно важливу роль у житті кожної людини, особливо для дітей шкільного віку, коли відбувається активне навчання та розвиток. Тому важливо дбати про здоров'я очей та створювати комфортні умови для зорової роботи.
Сучасні дослідження показують, що спектр світла, яке нас оточує, має значний вплив на організм людини, зокрема на зір. Особливу увагу слід звернути на синє світло, яке, хоча й необхідне для багатьох біологічних процесів, у надмірній кількості може негативно впливати на очі.
Щоб зберегти зір школярів, слід дотримуватися кількох простих, але ефективних рекомендацій:
1. Поєднуйте природне та штучне освітлення. Намагайтеся максимально використовувати природне світло протягом дня, а для вечірнього часу обирайте штучні джерела з теплим спектром (2700-3000 К) та низьким вмістом синього світла.
2. Робіть перерви під час роботи за комп'ютером. Кожні 20-30 хвилин відводьте погляд від екрану та робіть вправи для очей.
3. Використовуйте захисні засоби. Для смартфонів, планшетів та комп'ютерів існують спеціальні програми та захисні плівки з фільтрами синього світла.
4. Обмежте використання гаджетів перед сном. За 2 години до сну рекомендується зменшити час, проведений за екранами, оскільки синє світло може порушити вироблення мелатоніну, гормону, який регулює циркадні ритми.
5. Правильно організуйте освітлення робочого місця. Для робочої зони краще використовувати лампи з нейтральною або холодною колірною температурою, але при цьому слід забезпечити достатню освітленість та відсутність мерехтіння.
Обираючи лампи для дому, звертайте увагу на їх колірну температуру та спектральний склад. Для житлових приміщень краще підійдуть лампи з теплим світлом, а для робочих зон – з нейтральним або холодним. Важливо також, щоб освітлення було достатнім та не викликало дискомфорту для очей.
Дотримуючись цих простих порад, ви зможете зберегти зір своїх дітей та забезпечити їм комфортні умови для навчання та розвитку. Пам'ятайте, що здоров'я очей – це запорука успіху в навчанні та повноцінного життя!
Андрущенко Ксенія, учениця 11-Б класу
[img(40%,)[news/2025/02/andrysh.jpg]]
Зелена магія українського весілля
Рослини завжди відігравали особливу роль у нашому житті. Для українців вони були не лише джерелом їжі та ліків, а й носіями глибокого символізму, пов'язаного із життям, красою, коханням, відродженням, родючістю.
Саме тому особливо поширеним на Полтавщині було використання фітоморфних образів у шлюбній обрядовості.На весіллі рослини супроводжували молодят на всіх етапах святкування. Кожна квітка, кожне деревце мали своє значення й виконували певні функції.
Наші предки вірили, що рослинам притаманна особлива магічна сила, яка здатна захистити від зла, лихого ока та заздрощів.
Так, оберегом для молодої слугував вінок, який подружки нареченої плели з барвінку. Його стійкість і вічнозелене листя символізували вічне кохання, молодість і вірність.
Із рослинними елементами вишивки весільного рушника закладалися підвалини майбутнього подружнього життя. Так, символіка винограду розкриває нам радість і красу створення сім'ї. Калина – це повнота й гармонія життя, дівоча краса й любов. Дерево життя на полтавських рушниках – символ життя, матері-природи, родючості, продовження роду. Фітоморфний орнамент, вишитий на весільному рушнику, «передавав» молодому подружжю побажання щастя, достатку, благополуччя та благословення предків.
Магічного значення на весіллі набуває і коровай, прикрашений калиною, дубовими листочками, барвінком. Символіка такої випічки виявляла побажання молодятам довгого, щасливого спільного життя, добробуту для новоствореної сім’ї.
Посередником між поколіннями виступало гільце (обрядове деревце або гілка вишеньки, яблуньки, сосни), прикрашене квітами й стрічками. Воно символізувало дівочу цноту, розквітле молоде життя, любов.
Отже, весільна рослинна символіка слугувала не лише святковою прикрасою, а й була потужним оберегом для наречених, відображала зв’язок із природою, сакральні традиції та національну ідентичність українського народу.
Базілевська Марія, учениця 10-А класу
[img(30%,)[news/2025/01/01.jpg]]
Зростаюча популярність снеків серед підлітків вимагає уваги до їхнього впливу на харчову поведінку та здоров'я. Маркетинг створює привабливий образ споживача снеків, формуючи нові культурні норми. Часте споживання продуктів з високим вмістом жирів, вуглеводів і добавок підвищує ризик хронічних захворювань. Недостатня обізнаність підлітків про склад продуктів посилює цю проблему.
Одним із ключових факторів, що впливають на вибір снеків серед підлітків, є соціальні мережі та медіа. Маркетологи активно використовують інфлюенсерів і таргетовану рекламу для формування харчових звичок у молоді. Наприклад, через TikTok, Instagram і YouTube, де активно просуваються ненатуральні снеки. Коли популярний інфлюенсер їсть певні снеки, його підписники підсвідомо хочуть повторити цей досвід. Також працює ефект соціального доказу: якщо ми бачимо, що багато людей обирають певний бренд, ми починаємо довіряти йому більше. Крім того, аналіз різних рекламних роликів показав, що у відео одночасно застосовуються різні види нейромаркетингу, які базуються на основі сугестії, тобто соціально-психологічного впливу на споживача. З метою негайної реакції використовуються слова, лозунги та заклики для підсилення ефекту сприйняття, що змушує звернутися до попереднього досвіду та емоцій і спонукає придбати продукцію. Часто реклама чипсів зосереджується не на самому продукті, а на емоціях – дружбі, веселощах, задоволенні. Наприклад, у роликах відомих компаній снеків зазвичай показують компанію друзів, які разом насолоджуються чипсами. Це створює асоціацію: чипси = приємні моменти. Незважаючи на наявність інформації про склад продуктів на упаковці, підлітки часто ігнорують її, що свідчить про ефективність маркетингових стратегій, спрямованих на емоційну складову, а не на раціональний вибір.
Отже, регулярне вживання продуктів з високим вмістом адитивів негативно впливає на здоров'я молоді, сприяючи метаболічним порушенням та хронічним захворюванням. Необхідно розробити єдині стандарти маркування харчових продуктів з чітким зазначенням всіх компонентів, включаючи добавки. Слід посилити контроль за якістю продукції та продовжити впровадження програм харчування в освітніх закладах для формування здорових харчових звичок. Важливо заборонити оманливі маркетингові стратегії, що вводять в оману щодо складу та якості продуктів.
Клиша Анастасія, учениця 11-Б класу
[img(40%,)[news/2025/02/klusha.jpg]]
У сучасній освіті важливо не лише аналізувати результати роботи, а й знаходити нові та цікаві підходи до її організації. Саме тому педагогічна рада в Академічному ліцеї «Європейський» була присвячена підсумкам роботи професійних педагогічних спільнот за семестр і відбулася в незвичному форматі – перегляд серіалу «Учительська 24/7. Новорічний випуск». Він став не лише цікавим, але й практичним інструментом для обговорення реальних педагогічних ситуацій. Кожен епізод містив креативні види роботи, інтерактивні завдання та інноваційні технології. І все це було пов’язано із магією новорічних свят. Педагоги демонстрували свої фотоісторії успіху, показували проморолики найцікавіших кадрів серіалу, писали свою версію продовження другого сезону фільму. Не обійшлося й без щедрівок від найменших ліцеїстів, запального флешмобу та привітань від Санта Клауса … Така концепція заходу не лише дозволила проаналізувати досягнення й виклики педагогічних спільнот, але й додала колективу натхнення та енергії для подальшої роботи. Адже спільна взаємодія, обговорення реальних ситуацій і пошук креативних рішень – це запорука успішного розвитку освіти ХХІ століття.
<html>
<a href="news/2024/12/pedrad/01.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_01.jpg"/></a>
<a href="news/2024/12/pedrad/02.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_02.jpg"/></a>
<a href="news/2024/12/pedrad/03.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_03.jpg"/></a>
<a href="news/2024/12/pedrad/04.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_04.jpg"/></a>
<a href="news/2024/12/pedrad/05.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_05.jpg"/></a>
<a href="news/2024/12/pedrad/06.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_06.jpg"/></a>
<a href="news/2024/12/pedrad/07.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_07.jpg"/></a>
<a href="news/2024/12/pedrad/08.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_08.jpg"/></a>
<a href="news/2024/12/pedrad/09.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_09.jpg"/></a>
<a href="news/2024/12/pedrad/10.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_10.jpg"/></a>
<a href="news/2024/12/pedrad/11.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_11.jpg"/></a>
<a href="news/2024/12/pedrad/12.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_12.jpg"/></a>
<a href="news/2024/12/pedrad/13.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_13.jpg"/></a>
<a href="news/2024/12/pedrad/14.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_14.jpg"/></a>
<a href="news/2024/12/pedrad/15.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_15.jpg"/></a>
<a href="news/2024/12/pedrad/16.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_16.jpg"/></a>
<a href="news/2024/12/pedrad/17.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_17.jpg"/></a>
<a href="news/2024/12/pedrad/18.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_18.jpg"/></a>
<a href="news/2024/12/pedrad/19.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_19.jpg"/></a>
<a href="news/2024/12/pedrad/20.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_20.jpg"/></a>
<a href="news/2024/12/pedrad/21.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_21.jpg"/></a>
<a href="news/2024/12/pedrad/22.jpg" rel="iLoad|pedrad122024"><img src="news/2024/12/pedrad/_22.jpg"/></a>
</html>
День повномасштабного вторгнення росії на територію України став для нашої держави найдовшим в історії. Він не закінчився до сьогодні... 3 роки мужності й відваги, болю й ненависті, палкого бажання перемоги. Саме сьогодні учні 6-В класу долучилися до розмови про найбільшу трагедію України - жорстоку війну в центрі Європи. Ми згадали наших героїв-захисників, ушанували подвиг незламних і мужніх українців. Перемога, віра, стійкість, біль - найуживаніші слова сьогодні. Об'єднуємося заради свободи навколо ЗСУ. Тільки разом зможемо перемогти.
<html>
<a href="news/2025/02/6v/01.jpg" rel="iLoad|6v022025"><img src="news/2025/02/6v/_01.jpg"/></a>
<a href="news/2025/02/6v/02.jpg" rel="iLoad|6v022025"><img src="news/2025/02/6v/_02.jpg"/></a>
<a href="news/2025/02/6v/03.jpg" rel="iLoad|6v022025"><img src="news/2025/02/6v/_03.jpg"/></a>
<a href="news/2025/02/6v/04.jpg" rel="iLoad|6v022025"><img src="news/2025/02/6v/_04.jpg"/></a>
<a href="news/2025/02/6v/05.jpg" rel="iLoad|6v022025"><img src="news/2025/02/6v/_05.jpg"/></a>
</html>