Age | Commit message (Collapse) | Author | Files | Lines |
|
If you browse in a browser tab through some websites and want to go back to the previous page, post or user, you can either click the history back button, press the corresponding key on your mouse or even press <alt>+<arrow-left> on your keyboard. But if you only press <arrow-left> on a page, post or user, the callback function of the "keyup" event will change the location in the desired direction on the blog if there is a previous page, post or user, and if neither <ctrl> nor <shift> is pressed. This is a functionality of the javascript from the template and not a functionality of your browser.
Pressing <alt>+<arrow-left> IS a functionality of the browser and should not conflict with the behavior when <arrow-left> is pressed alone. This commit fixes this problem by adding the condition that <alt> should not be pressed either.
|
|
|
|
It's called "override" instead of "overwrite" in those contexts.
|
|
|
|
optimized to give them a new look.
|
|
|
|
are already such links within the navigation.
|
|
|
|
the <strong> tags. A CSS optimization was additionally made.
|
|
|
|
|
|
been increased from 100 to 250.
Database update to version 2.4.1 (no existing data will be lost or changed):
ALTER TABLE `page` MODIFY `argv` VARCHAR(250);
ALTER TABLE `post` MODIFY `argv` VARCHAR(250);
ALTER TABLE `user` MODIFY `argv` VARCHAR(250);
|
|
files was removed and some missing PHP closing tags were added.
|
|
|
|
administration area. In addition, some markup within the "/*/index.php" files of the admin template was re-formatted.
|
|
later for the coming search function in the administration area.
|
|
|
|
from Fontello.com, which contains only the absolutely necessary icons. This reduces the size of the font file to download to approximately 70 kilobytes. This is beneficial for smartphone users who have an extremely throttled data connection (for example, 32 KBit/s – yes, no joke!), which is not unusual in Germany where mobile internet is still expensive. On the other hand, it is always a good idea to load only what is really necessary. And why always (with cold browser cache) download unnecessary 70 kilobytes, when it is not necessary?
|
|
longer displayed within a <h2> element and have been moved to the underlying <div> element.
|
|
"const" and "let" from ECMAScript 6 (2015), which scopes the variables to the nearest enclosing block instead of the nearest function block.
|
|
main navigation of the admin template have been removed.
|
|
admin template so that users who do not have CSS enabled or using a web browser such as "Lynx" are able to understand and click the links (instead of seeing an empty and unclickable list item with no further information).
|
|
<article> element is more correct for the purpose of an item list, because real lists should only be used if the order of the items would change the meaning. This is not the case, because each item is a self-contained area which has nothing to do with the other items).
|
|
the "title" attribute was added to every heading link in the item list.
|
|
instead of the existing index "FULLNAME". This problem has existed since the first initial commit and was only present when more than one user had existed (it did not have affected the functionality of the navigation itself).
|
|
container element is only used for the CSS and has no semantic meaning, then a <section> element is definitely wrong for this purpose.
|
|
|
|
previous commits result in version 2.3:
+ Optimization: Originally, the core and template languages were completely separated in the logic of the Language class and you had to use "$Language->text()" to get a core language string and "$Language->template()" to get a template language string. Since this commit, the core and template language strings are still located in different files, but you now have to use "$Language->text()" for core and template language strings both. Thus, you can now even overwrite a core language string from the language file of a template if the core language string does not satisfy you.
+ Deprecated: The method "$Language->template()" was marked as deprecated and will be removed in further versions (currently, it's just an alias for "$Language->text()").
Template upgrade to version 2.3 (only for customized templates):
SEARCH: $Language->template
REPLACE: $Language->text
|
|
the <title> and <link> elements within <channel>. This is described in the RSS 2.0 specification.
|
|
to the RSS feed itself, but rather to the corresponding HTML website. This is described in the RSS 2.0 specification.
|
|
|
|
|
|
admin template for later use.
|
|
that browsers like Firefox can display the name of the stylesheet under "View -> Page Style".
|
|
|
|
name was misleading because the function did not generate a complete URL, but only a partial string (the slug) for the final URL. By the way, some improvements were made to the code.
|
|
+ The form buttons for insert, update and delete are now having a corresponding background color (green, blue and red).
+ The information messages are now displayed within the <form> element and with a red background color around the text.
|
|
+ Update [core]: Parsedown has been updated to version 1.6.2.
+ Optimization [admin template]: The markdown buttons have been placed directly above the content editor.
+ Optimization [admin template]: The content editor has been visually embellished (padding from the parent was removed).
|
|
been fixed in version 2.2.1
In all versions before 2.2 the template parameter $FORM['DATA']['PASSWORD'] was explicitly given, but always set to the value "NULL". Due to the changes in version 2.2, the parameter is no longer passed at all, which caused PHP to issue an notice via an undefined array index. The problem has now been solved by removing the "value" attribute for the password field from the form.
|
|
previous commits result in version 2.2 [changed template parameters]:
+ Implemented [core]: A new method called "getAll" has been added to the "Attribute" class which now returns all attributes as key->value array. The first parameter can be an array with attribute names which shall be excluded from returning.
+ Optimization [core]: The function "generateItemData" has been renamed to "generateItemTemplateData" and has been restructured to use the new implemented method "getAll" from the "Attribute" class.
+ Optimization [core]: The function "generateNaviTemplate" has been added and the functions "generatePageNaviTemplate", "generatePostNaviTemplate" and "generateUserNaviTemplate" have been restructured to make use of the new "generateNaviTemplate" function to reduce duplicate code.
+ Optimization [core]: Several files within the admin directory has been optimized to use the new "getAll" method of the "Attribute" class.
+ Optimization [core]: Several code optimizations have been made to the "HTTP" class.
+ Optimization [admin template]: All occurences of $PAGE['ID'], $POST['ID'] and $USER['ID'] have been replaced with $PAGE['ATTR']['ID'], $POST['ATTR']['ID'] and $USER['ATTR']['ID'] to make it more consistent. You now have to use ['ATTR']['ID'] instead of ['ID'] in your templates to get the ID of an item!
Template upgrade to version 2.2 (only for customized templates):
SEARCH: ['ID']
REPLACE: ['ATTR']['ID']
|
|
the previous commits result in version 2.1.1:
+ Optimization [CSS]: Unused .fa-* classes have been removed.
+ Optimization [CSS]: Hyphens have been disabled for the text within the content editor.
+ Optimization [CSS]: Some elements now have a smaller padding value which has benefits if the page is displayed on a mobile device.
+ Optimization [HTML]: The HTML <section> elements of the formular have been replaced with simple <div> elements because <section> elements should only be used for self-contained areas which have nothing to do with the rest of the content. The using of <section> elements at this place was semantically incorrect.
+ Implemented [JS]: Tab indents which are made by pressing <tab> can now also be removed by pressing <shift>+<tab>.
+ Optimization [JS]: The functions "emoticonReplace" and "markdownReplace" has been renamed to "insertEmoticon" and "insertMarkdown" and have been restructured.
+ Optimization [JS]: The DOMContentLoaded event listeners are not required because the file is included with the "defer" attribute.
+ Optimization [JS]: A function called "delayed" was added which executes a callback function after an delay of 20 ms (the delayed execution of code is necessary for the "insertEmoticon" and "insertMarkdown" functions because the content editor otherwise will losing focus when clicking outside at the emoticon or markdown buttons while the "onmousedown" event listener is still executing).
|
|
calling twice.
|
|
template parameters "$ITEM['BODY']['TEXT']" and "$ITEM['BODY']['HTML']" are now no longer strings but closures (anonymous functions). This means that the underlying logic, which parses the content or converts it into Markdown, is not executed until one of these parameters is really needed and called in the template (which maybe significantly increases the response time on a long list of items which not use one of those two parameters).
This means that within templates you now have to call these parameters in the following way (note the brackets at the end, which represent a function call):
<?=$ITEM['BODY']['TEXT']()?>
<?=$ITEM['BODY']['HTML']()?>
In the background, the anonymous functions are called and executes $Item->getBody() and $Item->getHTML() only when needed. Previously, $Item->getBody() and $Item->getHTML() were basically executed and the parsed content was passed to the template, regardless of whether these parameters are required in the template or not!
|
|
|
|
added.
|
|
|
|
|
|
|
|
|
|
lowercase (to be consistent with the rest of the HTML elements).
|