So this afternoon, I decided to upload and release my latest function mailattch. This function takes php’s mail to a whole new level, allowing files to be attached!
There are currently limitations to it and it isn’t highly tested but everyone is welcome to use it and is release under GPL v3.
I have also pushed a little update to ldir. It’s nothing big, just a shameless link back to here; if you really don’t like it then you’re free to remove it from the function source or you can hide is with CSS via display: none; on the class .ldir_link.
After reading through ldir’s latest release I found a few bugs which have now been fixed in ldir 1.7.10.
I’ve also rewritten the icon file type check, so we assume some common file types are available and then add any new ones to the array on that call, so if that type is found again in that folder, the icon is already known. All in all resulting in a considerably faster speed for listing the same file types or common files.
There are more extensions supported than listed but I chose not to include them all but you can if you wish.
I will also be looking at overhauling the icons and providing them as a pack allowing you to self host which at the moment isn’t possible due to licesning issue.
Yes, I know… No updates for nearly 12 months and then two come along in the same week!
ldir version 1.7.9 is now 10% smaller than 1.7.8! As well as saving minimal disk space, it’s also had some speed increaces.
The only downside is that we had to remove error code 3 from the function in order to speed it up; there are more speed increases to be had if I could reliably detect the file type icons with a fail over if there isn’t a type without utilising cURL.
If you want to customise ldir to not do those checks and just ignore unknown file type icons then the following code alterations will make a significant speed increase.
Change: (approx line 160)
$img = "unknown.png";
$type = "Unknown File";
//Remove this check to speed things up.
if(ldir_url_exists($ldir['im'].strtolower($ext).".png",$ldir['v'])) {
$img = strtolower($ext).".png";
$type = strtoupper($ext)." File";
}
Added better support for styling – Removed inline width CSS & Added CSS styles for each column
Removed some linebreaks.
Removed/Condensed some code (upto 7% smaller)
Custom UserAgent in CURL Opts.
So in simple terms, I’ve made it tell dropbox (the icon host) that it’s a web app, removed clutter around the code, condensed a few lines and added selectors rather than inline css so styling it (and making it responsive) should be much easier.
If you’re writing a new responsive website which seems to be the way to go for a single maintained site that is accessable via mobiles, tablets and phones then here’s some key screen resolutions to be targeting:
Description/Name
Resolution
Extra Info & Estimated Date
QVGA
320×240
Typically non-smart phones (and Smartphones c.2005)
HVGA
480×320
Typically older smartphones (c.2008)
VGA
640×480
Typically older smartphones (c.2008)
WVGA
800×480
Low-End Smartphones (c.2010 onwards)
SVGA
800×600
Low-End Computers (c.2000) and mid-range tablets
XGA
1024×768
Mid Range Computers (c.2005)
SXGA
1280×1024
Current Computer Screen (c.2010 onwards)
720p HD
1280×720
HD TVs, High-End Smart-Phones/Tablets
WXGA
1280×800
Laptops, Computers and High-End Smartphones/Tablets
WXGA+
1440×900
Typically Laptops and Computers
Key/Odd Resolutions:
ipad & 2
768×1024
Portrait XGA
iPad 3
1536×2048
XGA
Kindle Fire
600×1024
iPhone 1, 2, 3 & 3G
320×480
Portrait HVGA
iPhone 4, 4S
640×960
Portrait DVGA
iPhone 5
640×1136
HTC Sensation
540×690
This is just a small list of resolutions that’s in use out int he wild so to speak. The varying resolutions does make it slightly harder to get a consistant experience throughout but as long as your site looks good in the first list then you will have hit the majority of devices (as long as you remember to test portrait and landscape!).
As you can also see, Apple has recently decided to use strange resolutions in their devices where as most newer smart phones are 800×1280.
If you’re creating a responsive layout then there’s lots of resources out there to create a fluid grid to reflow the content when the screen size changes. I personally recommend Zurb’s Foundation but the latest version doesn’t support IE7; although IE7 usage is shrinking.