$theTitle=wp_title(" - ", false); if($theTitle != "") { ?> } else { ?> } ?>
by Andrew Johnstone
In: PHP
25 Jul 2005The never ending list of functions… Some more for me to learn and play with, many are part of the Zend Platform….
accelerator_get_blacklist() array accelerator_get_blacklisted_paths() array accelerator_get_configuration() array accelerator_get_scripts() array accelerator_get_server_start_time() long accelerator_get_statistics() array accelerator_get_uris() array accelerator_get_version_info() array accelerator_reset() void accelerator_set_status(boolean $status) boolean accelerator_unlock_functions(string $password) boolean confirm_extname_compiled(string $arg) string leak(int[optional] $num_bytes = 3) void output_add_rewrite_var(string $name, string $value) bool output_cache_check_file(string $filename) array output_cache_disable() void output_cache_disable_compression() void output_cache_exists(string $key, int $lifetime) mixed output_cache_fetch(string $key, string $function, int $lifetime) string output_cache_get(string $key, int $lifetime) mixed output_cache_get_statistics() array output_cache_output(string $key, string $function, int $lifetime) string output_cache_put(string $key, mixed $data) bool output_cache_remove(string $filename) string output_cache_remove_key(string $key) string output_cache_remove_url(string $url) string output_cache_stop() void output_reset_rewrite_vars() bool time_nanosleep(long $seconds, long $nanoseconds) mixed
In: General
21 Jul 2005Yesterday Andrew Gearing (AGCC), took me on a tour of London Meridian Gate DC. You cannot go anywhere without a PAC security card access and it was very noisy on the datacenters floors. Anyway was very interesting to see, thanks Andrew:)
Security
In: General
15 Jul 2005Yesterday I had a nightmare with some very unusual character encoding issues. This only occurred in internet explorer, however the text of the page was static, the charset for the page was:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
and also the http header for the charset was set to UTF-8. Halfway through the body of the content ie did not recognise a character skipping the next few characters and cutting off half of a strong tag. eg “etcetc…strong>” where as the source was “etcetc…</strong>”. I haven’t found the particular cause at present, however overwriting the file with a previous version overcome this problem. Will be curious to know if anyone else has come across any peculiar results such as the above.
In: General
15 Jul 2005A very quick thing I learnt yesterday as well..
When using a hyperlink to a pdf file you can search the document by suffixing a hash.
.pdf#search='query'
Ensure the query is within quotes.
In: General
13 Jul 2005A particular interesting project, as I have been doing a little research into this topic and recently retrieved the specifications for ETSI.
The BBC TV-Anytime Java API is for parsing, manipulating and creating TV-Anytime metadata. It is currently released under LGPL
TV-Anytime is an open standard for metadata describing TV and radio programmes that is designed to support Personal Video Recoders (PVRs), programme guides and related technologies. The TV Anytime Forum is an association of organisations which seeks to develop specifications to enable audio-visual and other services based on mass-market high volume digital storage. For further information go to www.tv-anytime.org. The TV-Anytime specifications are published by ETSI as the TS 102 822 series and are available at the ETSI web site (http://www.etsi.org/)
BBC R&D White Paper WHP060
TV Anytime
- CPAN modules
These are projects we have released the following distributions to CPAN (Comprehensive Perl Archive Network)- Apache Modules
These are modules extending the capabilities of mod_include type functionality.- Dirac
Dirac is a state of the art video codec that provides general-purpose video compression and decompression tools. It is cross-platform and written in ANSI standard C++.- Media Lounge
A C++ application, based on the “Crystal Space 3D” game engine SDK. It displays an interactive, shared virtual world, in which the content author can embed audio and video sequences- TV-Anytime Java API
The BBC TV-Anytime Java API is for parsing, manipulating and creating TV-Anytime metadata.- Kamaelia
Kamaelia is designed as a testbed for network experimentation using a component architecture designed to simplify creation and testing of new protocols for large scale media delivery systems.- Media Dispatch
A reference implementation of the Pro-MPEG Media Dispatch Group’s Media Dispatch Protocol.- MXF File Test Engine
Provides a system that allows various tests to be performed on MXF files- Video Shot Change Detector
A simple DirectShow video shot change detector filter, suitable for a wide variety of applications.
Also don’t forgett to go backstage.
And other R&D Projects.
In: General
11 Jul 2005Today I found an odd bug in MSXML.
<!-- <xsl:comment> -----BEGIN call-template name="article" EMPTY PathID----- </xsl:comment> --> msxml3.dll error '80004005' The stylesheet does not contain a document element. The stylesheet may be empty, or it may not be a well-formed XML document. "C:\DOMAINS\HOSTELHOST.COM\WWWROOT\CLIENT\DK\EYEWITNESS\../includes/src/default.asp, line 43"
In: General
10 Jul 2005I recently wrote a very quick CMS in ASP in two days and seeing as I haven’t touched ASP in a number of years and have forgotten alot of very minor things, such as language constructs. I have re-learnt some slightly odd methods to what i’ve been using recently with complex forms for example passing collections over from web forms. E.g.
Trying to pass over an array as I usually would use something along the lines of…
<input type="text" name="InputArray[id]" />
I spent most of that time trying to figure out how to loop through a Request.Form Collection to extract the name of collection submitted across. What I didn’t realise at the time was that you don’t need the brackets and the collection name is the parameter you submit across.
<input type="text" name="InputArray" />
Sample
Request.Form("AssociateDataKey").Count
For i=0 To Request.Form("AssociateDataKey")
Response.Write Request.Form("AssociateDataKey")(i)
Next
This is using a Natural Form Field Array, however you can suffix a number (Artificial Form Field Array) and loop through the collection to check whether it exists. This makes me question how you pass multi-dimensional arrays across with ASP?
<input type="text" name="InputArray[0][1]" />
<input type="text" name="InputArray[1][0]" />
Top Ten ASP Tips – Know the differences between Natural and Artificial form field arrays.
With regard to the simple CMS, it’s actually designed to be very flexible, supporting structured & unstructured data, as the information output will be for flash. The CMS adapts to the design of the database, with roughly seven queries you can extract all the information from the database that you could possibly require. As I mentioned the CMS analyses the datatypes displays HTML form fields according to them datatypes. Disables, enables forms based on the fieldname etc and updates joined tables. Whilst the only aspect of the CMS that really needs tweaking is the SQL SELECT fieldnames & the WHERE clause, I will most likely Map this back to XML as a form of MetaData and because the design directly relates to a physical sitemap, even in its present state the marketing guys can understand it.:D
This will run
www.vh1la-media.com
www.mtvla-media.com
In: General
29 Jun 2005Whilst writing custom Content Management Systems, its quite surprising, how the various rules that I implement from WorkFlow to Logic, actually make many Content Management Systems available Off The Shelf useless. Most predominantly Presentation Logic is a critical factor in most if not all open source CMS’s making them unviable solutions.
A very simple example.
Displaying peoples names for example in a very limited space, is a difficult task when you have to comply with consistency and keep them on one line. E.g. (Removed real names for privacy)
12345678 123456789012345
12345 12345 1234567890123
When you look at some simple rules like this and have strict designs, this is where most Off The Shelf CMS’s fall short. Control and flexibility is an awkward combination, as the more control you encompass the more complex it becomes to maintain.
Lately I’ve been looking into a new topic.
There are a couple of different services of which can get quite easily mixed up. Firstly “WTVML is a markup language that provides a content authoring format for interactive television service applications based on Internet standards.” and also “Sky Active, which is an interactive entertainment channel that is a cross between a television channel and a magazine”.
The possiblities of SkyActive & SkyInteractive are not quite clear as yet, however finding the time todo further research & development into the above is holding me back at present. However it would be nice to hear back from others who have had the time to look into or are currently developing for either of the above.
For more information take a look at (skyinteractive.com / skyactive.tv)
Schemas:
http://waptv.com/xsd/v6/wtvml_6.0.xsd
DTD:
http://waptv.com/DTD/wtvml_1.0.dtd
In: General
27 Mar 2005After pitching for the Museum of London it has brought to light the hypocritical nature of businesses and web standards. Why claim under false pretences that your site abides to web-standards? I find this fundamentally scrutinizing when it states “The Museum is not be liable for any loss, damage or inconvenience arising from your use of, or reliance on, the website”. What is the purpose of a website if it inconveniences users? Three seconds later the browser is closed and the purpose of the site is detrimental to itself.
After attending the Royal National Institute For The Blind (RNIB) it has made me realise, how intricately designs ultimately hinder end-users performance. Balancing a graphically innovative site is a very tedious task and is difficult to cater every audience. Looks like I am going to have to do more research… Standards are pushing things in the right direction; however it’s down to common sense, although aspects as highlighted by RNIB, were not quite as apparent.
I have been a developer for roughly 10 years and have worked with an extensive range of technologies. Whilst working for relatively small companies, I have worked with all aspects of the development life cycle, which has given me a broad and in-depth experience.