aboutsummaryrefslogtreecommitdiffstats
path: root/include/pagelets.php
AgeCommit message (Collapse)AuthorFilesLines
2021-10-24Split up BigPipe "enabled" method into two methodsThomas Lange1-1/+1
Split up the "enabled" method of the BigPipe class into two methods, one to check if the pipelining mode is currently enabled ("isEnabled") and another one to enable/disable the pipelining mode ("setEnabled"). This change prevents that a single method has two different jobs, which can be confusing for programmers who didn't wrote the code but only use them. Now there are two clearly named methods for exactly one job.
2021-10-24Remove closing tags and ensure LF at end of filesThomas Lange1-1/+0
Remove the unnecessary PHP closing tags and ensure that *all* non-binary files ending with an LF character.
2018-02-03Remove obsolete commentThomas Lange1-3/+0
The method "Pagelet::addDependency()" does not allow anything other than an actual instance of Pagelet as argument (see commit 6550b64a5a6463bd371e13af82db86999b9363cc). The existence of this comment was forgotten and now finally removed.
2018-02-03Make use of the new Application class to create class instancesThomas Lange1-22/+15
2018-02-03Move autoloader for classes into pagelets.phpThomas Lange1-0/+8
This commit moves the "spl_autoload_register" function directly into the pagelets.php to reduce duplicate code within index.php and async.php.
2018-02-03Move check if BigPipe should be disabled into the pagelets.phpThomas Lange1-0/+13
This commit moves the if condition, which checks if the pipelining mode of BigPipe should be disabled, directly into the pagelets.php to reduce duplicate code within index.php and async.php.
2018-01-26Use custom IDs for stylesheet and javascript resourcesThomas Lange1-6/+6
2018-01-16Use seperate classes for debuggingThomas Lange1-11/+18
The debug mechanism has been changed. Instead of keeping the debug mechanism hardcoded within the core classes, it's now possible and recommended to use the seperate debugging classes which you can modify like you want. Those classes inherit their associated core classes and can add some debugging stuff. This has the advantage of having a clean core code without any debugging stuff. If the debug classes are not used then they shall not be included and their code will not be initialized.
2017-10-07The shorthand methods "addCSS" and "addJS" have been removed. If you need ↵Thomas Lange1-8/+6
shorthand syntax, you can abstract the Pagelet class and use your own extended class which is more flexible and will keep the BigPipe main classes as small as possible.
2016-10-22The Pagelet representation class in PHP now has a separate method to add ↵Thomas Lange1-2/+7
dependencies (either with the instance of the dependency Pagelet or the unique ID as string as argument).
2016-06-25Update with new features and code improvements.Thomas Lange1-4/+9
+ New classes have been added: "BigPipe\Resource", "BigPipe\Resource\CSS", "BigPipe\Resource\JS". If you wan't to add a resource to a Pagelet, you can now built a new resource object with the "CSS" or "JS" class (the "Resource" class is abstract and the parent class of "CSS" and "JS") and can add PhaseDoneJS callbacks for this resources with "Resource::addPhaseDoneJS()" similar to "Pagelet::addPhaseDoneJS()". To add the resource to your pagelet: "$Pagelet->addResource($Resource)". Of course, you can still use the two SHORT methods "Pagelet::addCSS()" and "Pagelet::addJS()" which needs only one parameter with the resource URL. + Each resource has now PhaseDoneJS callbacks for 3 phases (Object initializied [INIT], Loading started [LOAD], Loading complete [DONE]). + Check your usage of the PhaseDoneJS callback constants of the Pagelet class: These constants have been renamed. + Debugging mode: Just set BigPipe::debugging(TRUE) and each pagelet and resource will be pass through a function which adds PhaseDoneJS callbacks with debug informations (Look now at the Javascript console and enjoy the beautiful colors which makes the debug informations better readable for your eyes. \(o_o)/). + Several code improvements on almost all files.
2016-06-23Pagelets executed immediately; Dependency feature; Several improvementsThomas Lange1-0/+50
+ All pagelets are now executed immediately on arrive. + A "Display Dependency" feature was added. If you give a pagelet an dependency, it will first be executed if all pagelets, who registered as dependency, are displayed. + If BigPipe.reset() is called, the function loops through each Resource and executes Resource.abortLoading(). This removes the <link> or <script> element from DOM and removes the onload callbacks. This is to prevent that an onload callback from a previous page are executed while the user has already changes the page asynchronously and a resource from the previous page wasn't already loaded.