New revs

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: New revs
« Reply #2040, on March 30th, 2013, 06:39 PM »
(13 files, 3KB)

Revision: 2040
Author: arantor
Date: 30 March 2013 17:38:46
Message:
! Overhauled how the do-not-log behaviour works, so it can properly be done. The old ways were a bit naive. (index.php, Ajax.php, Dlattach.php, Feed.php, JSEditor.php, JSOption.php, VerificationCode.php, ViewQuery.php, ViewRemote.php)
! Notifications action shouldn't be logged. (index.php, Who.english.php)
! New do-not-log for actions behaviour is also accessible for plugins when declaring their own actions, just add nolog="yes" to the <action> declaration. (index.php, Load.php, ManagePlugins.php, plugin-info.rng)
----
Modified : /trunk/Sources/Ajax.php
Modified : /trunk/Sources/Dlattach.php
Modified : /trunk/Sources/Feed.php
Modified : /trunk/Sources/JSEditor.php
Modified : /trunk/Sources/JSOption.php
Modified : /trunk/Sources/Load.php
Modified : /trunk/Sources/ManagePlugins.php
Modified : /trunk/Sources/VerificationCode.php
Modified : /trunk/Sources/ViewQuery.php
Modified : /trunk/Sources/ViewRemote.php
Modified : /trunk/Themes/default/languages/Who.english.php
Modified : /trunk/index.php
Modified : /trunk/other/plugin-info.rng
When we unite against a common enemy that attacks our ethos, it nurtures group solidarity. Trolls are sensational, yes, but we keep everyone honest. | Game Memorial

Nao

  • Dadman with a boy
  • Posts: 16,082
Re: New revs
« Reply #2041, on March 30th, 2013, 07:42 PM »
rev 2041
(3 files, 2kb)

! My inden@zi vanity project was adding tabs to textareas, so I'm adding a skip for these. Sorry about that one. Also used the opportunity to protect <pre> tags, although there shouldn't be any -- but you never know. For the record, my protection code worked on first try, ah ah. I'm getting used to writing this kind of code I'm afraid... (Subs-Template.php)

! Fixed border in bottom linktree in Warm and Wuthering. Also minor fix to slogan positioning in Warm. (Warm/extra.css, Wuthering/extra.css)
Re: New revs
« Reply #2042, on March 31st, 2013, 03:35 AM »
rev 2042 -- all the cool kids have it!
(6 files +1-1, 11kb)

+ Ah, what a complicated mess... But what I wouldn't do to save bytes!! The spinning wheel is replaced, on supporting browsers, with a fully CSS-animated equivalent. It looks much better, saves 900 bytes in the gzipped CSS, and it makes me look smart. What's not to like? (zoomedia.js, common.css, index.css, zoom.css)

* Replaced loader.gif spinning wheel with wheel.gif, which is the same image, but optimized for size. The palette is reduced to 7 colors (from 63!) without any noticeable difference, and it saves about 600 bytes. For oldIE & co. (loader.gif, wheel.gif)

! Fixed nested mixins. Previously, any 'mixin:' rules added to a mixin declaration would be ignored, which was bad... (Class-CSS.php)

! Ajax banner needed a box-sizing property, as it was setting both width: 100% and a padding rule, thus offsetting the spinning wheel by a few pixels. (index.css)

* Commenazi. (ScheduledTasks.php)

@ A quick note: I discovered that mixins within mixins accept the 'mixin:' rule, but not the 'mixes' symbol. Well, there's a limit to what these symbols can do, at least when it comes to the parser. I guess I won't rest until I find a solution for this.
Re: New revs
« Reply #2043, on April 1st, 2013, 12:40 AM »
rev 2043 - "Je poste, donc je suis." (René-Gilles Descartes)
(10 files, 4kb)

* Playing catch up with translations! (Admin, Help, index, Install, ManageMaintenance, Modlog, Who)

* Updated $txt['error_new_reply_reading'] to make more sense in context. I think..? (Post.language.php)

- Removed a reference to an error entry that wasn't used anymore (new_reply). (Post.php)
Re: New revs
« Reply #2044, on April 3rd, 2013, 06:50 PM »
rev 2044
(7 files, 3kb)

+ Added new Wess constant, 'can_animate', which aliases the long and complicated list of browsers that support CSS3 animations. Of course, you don't have to use it -- you only need it if you're planning to provide a, err... fallback. (Class-CSS.php, common.css)

! Fixed that annoying glitch in the error log, where filters would show with double-encoded entities. Note to self and anyone: westr::safe() rocks, use it more! (ManageErrors.php)

! Settings.language.php is a special file; creating an empty version of it will generate an error when someone switches skins while using said language. (Settings.english-uk.php)

* Finished British version of a file. If I ain't a good European citizen! (Who.english-uk.php)

- Removed 'gallery feed' action from Who's Online list. Just like regular Atom feeds, there's little reason to waste time logging these, as they're not real page loads. (Who.language.php)

- Old Opera and old Safari don't need to view CSS3 animations, as they don't support them at all. (Class-CSS.php)
Re: New revs
« Reply #2045, on April 4th, 2013, 12:48 PM »
rev 2045 -- this one is mainly for you to evaluate, Pete. Many changes in areas I'm not very comfortable.
(7 files, 6kb)

+ Added a 'feed' hook for plugins to insert their own feed sub-actions. (Feed.php, ManagePlugins.php)

* Moved 'determine_location' hook out of pretty URLs code, to make it a more generic URL manipulation hook. Also made $full_request subject to modifications. If I'm not mistaken..? (QueryString.php)

* Renamed action=media;sa=feed to action=feed;sa=media for consistency (and to prevent them from being logged in Who's Online). Added a hack to redirect them to Aeva-Foxy anyway, because... Well... It's complicated. (Feed.php, Media.template.php)

! $context['subaction'] should be built from $_GET specifically, not $_REQUEST. Not that we use that variable anyway, but... (index.php)

- Removed fallback URL for old SMF feed URLs and SMF Media Gallery URLs. I've built a plugin to account for these, if you're interested in supporting these URLs. Will probably be two plugins actually. One for SMF, one for SMG/AeMe. (QueryString.php, Aeva-Gallery.php)

- Removed two unused globals. (Errors.php, QueryString.php)
Re: New revs
« Reply #2046, on April 7th, 2013, 07:42 PM »
rev 2046 -- my skeleton object rocks. It just needs to be tested from a plugin author's point of view. ;)
(4 files, 5kb)

! Fixed a situation in skeleton handling that I didn't consider. If we're using a target array with a fallback to 'default', and the skeleton is currently hidden (e.g. an XML template), Wedge would still force the layer to be shown in default, even though it's very unlikely to be the desired solution. For instance, my current code has the Notification block added to all XML templates by default because of said fallback, effectively breaking all Ajax responses due to malformed XML. Eh, silly me... Obviously, fixed by ensuring we skip the block if we're in that situation. (Class-Skeleton.php)

+ Added a new skeleton method, insert(), which is basically a generic operation function to add a layer/block. Instead of doing wetem::add(array('somewhere', 'default'), 'block'), you can now do wetem::insert(array('somewhere' => 'add', 'default' => 'first'), 'block'), meaning that if the 'somewhere' layer is available, 'block' will be added ('add') to it, and if it isn't there, it will be prepended ('first') to the 'default' layer. Is that clear enough...? It gives you greater flexibility if you're writing a plugin and want to have a variety of layers or blocks as fallback targets. Calling for opinions on the method name, as I want it to be as generic as possible, and 'insert' might not be. Maybe 'push', or 'put'..? (Class-Skeleton.php)

* Disable CSS/JS output compression by default at install time on non-Apache servers. Output compression may work, but only if you declare the proper MIME types manually in your configuration files. (install.php, install.sql)

* Made $full_board available for 'determine_location' hooks to modify. Not that it'll be very helpful, though... (QueryString.php)

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: New revs
« Reply #2047, on April 7th, 2013, 11:44 PM »
(6 files, 2KB) - this is just a few bits and pieces I have kicking around that I can safely commit without affecting anything else.

Revision: 2047
Author: arantor
Date: 07 April 2013 22:42:43
Message:
! Managing membergroups could occasionally throw errors. (ManageMembergroups.php)

! Slightly nicer expandable groups in admin panel. At least I think so. (Admin.template.php, ManagePermissions.template.php)

! Corrected locale. (index.english-uk.php)

! Spacinazi. (Subs-Cache.php)

! Just a little something I've been using - I personally like to change the colour of disabled things to let people know they're disabled. (mana.css)
----
Modified : /trunk/Sources/ManageMembergroups.php
Modified : /trunk/Sources/Subs-Cache.php
Modified : /trunk/Themes/default/Admin.template.php
Modified : /trunk/Themes/default/ManagePermissions.template.php
Modified : /trunk/Themes/default/languages/index.english-uk.php
Modified : /trunk/Themes/default/skins/mana.css

Nao

  • Dadman with a boy
  • Posts: 16,082
Re: New revs
« Reply #2048, on April 9th, 2013, 05:28 PM »
rev 2048
(6 files, 3kb)

* Replaced the double quote hack in JavaScriptEscape with another kind of hack that doesn't require going through all of the calls in the file... It's been tested for a few weeks on my sites, but at commit time, I'm not sure it's that solid. So I'm splitting it from all my other changes, and committing it separately for easier fixes, if needed. (Subs-Cache.php, Subs-Template.php, Subs.php, index.template.php, ManagePermissions.template.php)

* Spacinazi. (Feed.php)
Re: New revs
« Reply #2049, on April 9th, 2013, 07:33 PM »
rev 2049
(3 files, 3kb)

* Completely rewrote JavaScriptEscape. I'm like that. Now it's using str_replace instead of strtr, which is about 20% faster with many iterations. I've tested against the four possible quote/double-quote permutations (inside and outside the string), and figured out a cleaner way to escape quotes. This one really, really should be working... (Subs.php)

! Wedge could return errors when quick-editing a topic subject, but would never show said errors... This one's ugly, but what matters is the message... Right? (topic.js)

* I've always hated that a function was named Suggest_Search_Member. Renamed it all to lowercase. Also got rid of that silly type test that's been there for years... There's only one type of thing you can search for: members. Deal with it. When we add support for more, guess what? We'll refactor the code to account for that... (Suggest.php)
Re: New revs
« Reply #2050, on April 11th, 2013, 02:52 PM »
rev 2050 -- about a couple of weeks' worth of work... Good luck going through it!
(17 files -1, 27kb)

@ Is that a huge commit or what..?!

* Fine-tuned tons more things in the notification system. (Seriously, pretty much all files in this commit. Also, index.css, index.template.php, and moved notifications.js to script.js; script size was increased significantly but adds several goodies, such as checking tab visibility to determine the polling delay.)

* Renamed returnAjax to return_raw (simple text strings), return_xml (XML structure) and return_json (arrays or pure JS objects), to allow for variable parameter length; thus, you can now do return_raw('Hello, ', 'World!') if you want. It's also, well, easier to convert existing echo's. (Ajax.php, JSEditor.php, JSModify.php, Aeva-Gallery.php, Notifications.php, QuoteFast.php, Subs.php, Suggest.php)

* Started getting rid of XML templates, and using proper return_xml calls instead. The idea is that if you modify anything in a XML template, you change the software behavior, rather than its appearance, so it shouldn't be outputted by the 'view' part of the MVC model. (JSEditor.php, JSModify.php, QuoteFast.php, Suggest.php, Xml.template.php)

+ Added getIcon and getUnread methods to notifications. These are generic functions to return what's most likely to be the issuer's avatar, and a notification's unread status. (Class-Notification.php, Notifications.php)

* Notifications will now return unread notifications only in the popup. I've added a placeholder for showing all notifications within the popup, but.. It's only a placeholder, all right? Can you see how many things I'm playing with at the same time? I'll implement this when I have more time... (Notifications.php, Notifications.language.php)

! Yes, display: table is needed in prev/next links, contrary to what I suspected. Otherwise the div may never expand completely horizontally, if the cells are too short. (sections.css)

! Wrong argument order in rewritten JavaScriptEscape would break inline JS code. I'm surprised no one reported that to me yet... (Subs.php)

! There is no 'access_denied' error language string. The proper string is 'no_access'. (Notifications.php)
Re: New revs
« Reply #2051, on April 11th, 2013, 04:16 PM »
rev 2051 -- minor fixes, anything I could find that could quickly be isolated in a single commit.
(12 files + an attic file, 6kb)

+ Added support for user-select CSS. As Presto will soon be a thing of the past, I really should start changing all of my .mousedown(false) JS calls to proper CSS... Well, it's not that important. (Class-CSS.php)

! Forgot to add avatars to Like notifications. (Class-NotifierLikes.php)

! Also forgot to commit the rest of my chr(15) modifications, part of the JavaScriptEscape magic. (Subs-Cache.php, Subs-Template.php)

* Replaced menurow.gif with an optimized version, which is about twice smaller. This will soon be gone, too, replaced with pure CSS, but if I ever want to restore it, I know where it is now. (images/theme/menurow.gif)

* Renamed .separator class to .sep, which is also unused. It's very trivial, but this morning I needed to save as many bytes as possible, and came up with this... It actually saves 5 or 6 bytes per page load. I wouldn't usually bother, but there were already CSS comments in place that explain what the class stands for, so... Why not shorten its name..? (Unused-SelectBox.js, GenericMenu.template.php, index.template.php, Msg.template.php, extra.ie6.css, extra.ie7.css, sections.css)

- Removing a silly font-size setting that was overriding another override to the default, making no sense at all and wasting over 20 gzipped bytes... This is either me being crazy, or a hickup in team communication. Ship hattens. (sections.css)
Re: New revs
« Reply #2052, on April 12th, 2013, 07:32 PM »
rev 2052
(7 files, 6kb)

* Three less XML templates, two to go. (Ajax.php, Register.php, Stats.php, Xml.template.php)

! The old Profile Notifications page is still there, but it wasn't showing up to do duplicate array entries. (Profile.php)

! Typo. (Class-CSS.php)

+ Added tt tag to list of inline BBCodes allowed within parse_bbc_inline. Also, because the parameter list doesn't match parse_bbc's, there's no point in shoving $short_list to the end after some params that are rarely used (such as the cache ID), so I'm moving it to right after the $message param. (Subs-BBC.php)

Arantor

  • As powerful as possible, as complex as necessary.
  • Posts: 14,278
Re: New revs
« Reply #2053, on April 14th, 2013, 12:21 AM »
(3 files, 1KB)

Revision: 2053
Author: arantor
Date: 13 April 2013 23:20:07
Message:
! Stupid bug with a string being redeclared accidentally. (ManageBans.template.php, ManageBans language file)
----
Modified : /trunk/Themes/default/ManageBans.template.php
Modified : /trunk/Themes/default/languages/ManageBans.english.php
Modified : /trunk/Themes/default/languages/ManageBans.french.php

Nao

  • Dadman with a boy
  • Posts: 16,082
Re: New revs
« Reply #2054, on April 14th, 2013, 12:43 AM »
rev 2054 -- just some quick ones, too...
(5 files, 3kb)

! Fixed links not being clickable in notifications popup, and added a shortcut to the user's settings page. (Notifications.template.php, Notifications.language.php, script.js)

* Some WebKit browsers, that aren't Chromium-based or Safari itself, don't seem to provide any meaningful version number, so I wrote a short function to match WebKit rev numbers to Safari versions; this is only an estimate, because forks sometimes remove or add features that are not in mainline. But it seems to work well, at least in Lunascape (at least it allows it to use Safari 5.1 features in Wess, instead of Safari 4-level.) (Class-System.php)