Older blog entries for mglazer (starting at number 378)

How can I copy and print a textual-selection quickly and with the paper size needed only for the textual selection such as a small quote?

You can copy and paste quickly but I can't copy and print quick enough such as copy and paste to my paper notebook.

Remember Brother P-touch? Those small lable printers?

So, imagine you can print a small selected text block to that exact paper size and easily paste it into your paper notepad.

Usefull right?

A small unix printer with varying label sizes that you can paste into your paper notepads based on whatever is currently selected in your computer.

14 Jan 2003 (updated 4 Aug 2011 at 18:15 UTC) »

Some cool client side PHP caching tricks I use in PHPortal.

/* ------- FIRST ------ */

$x->obj_data['attr']['timestamps']['V'][] = $x->obj_data['attr']['date_modified']['V'];

if ( $x->internal_run_end == 'yes' ) {

$timestamp = max ( $x->obj_data['attr']['timestamps']['V'] );

$tsstring = gmdate ( 'D, d M Y H:i:s ', $timestamp ) . 'GMT';

if ( $_SERVER['HTTP_IF_MODIFIED_SINCE'] == $tsstring ) { header("HTTP/1.1 304 Not Modified"); exit; } else { header ( 'Last-Modified: ' . $tsstring ); } }

/* ------- SECOND ------ */

$timestamp = $x->obj_data['attr']['date_modified']['V'];

$tsstring = gmdate ( 'D, d M Y H:i:s ', $timestamp ) . 'GMT';

if ( $_SERVER['HTTP_IF_MODIFIED_SINCE'] == $tsstring ) { header("HTTP/1.1 304 Not Modified"); exit; } else { header ( 'Last-Modified: ' . $tsstring ); }

Software Programming:

Some of my original work includes:

  1. Object Modeling
    1. Editor
    2. Stoyboard
    3. Controller
  2. URI Objects
  3. ACL User Group Access
  4. Templating
    1. Tools
    2. Static, Parser, Compiler, Cacher, Components, Layout control, Navigatrion, Theme Sets
    3. Manager ( TMS)
  5. Database Stores
    1. Layers
    2. Caching
    3. Manager
    4. Builder - Application Builder, Database Builder
  6. Forming
    1. Generation
    2. Static
    3. Dynamic Object Model Database to be Modeled
    4. Processor
    5. Manager
  7. Content-Type Conversions
    1. XML, RSS, PDF, TEXT, VXML, WML...
13 Jan 2003 (updated 4 Aug 2011 at 18:15 UTC) »
12 Jan 2003 (updated 12 Jan 2003 at 05:26 UTC) »
Star of David KeyBoard Key and Font.

This:

<b style="font:normal 15px Wingdings;">Y<\b>

Makes this:
Y

How about a White background and Blue star you say? Ok, one minute.

Y

Larger? Ok.

Y

Y

9 Jan 2003 (updated 4 Aug 2011 at 18:16 UTC) »

I am creating a storyline /storyboard dhtml frameset like the flash keyframe layer frame for my object model array (OMA) editor.

Each layer is a screen or webpage each keyframe is an event or action that
is assigned a handler and its all based on an array that can be run by a controller
to execute your web apps.

Its an easy way to map out your application screens and actions as a object
model array that can also be executed based on your settings.

Each layer or screen represents a controller file and each keyframe or action
event repreesnts that controller file or class method or function.

The OMA' s controller calls the appropriate screen and action based on your
predefined object action controlls.

Its pretty simple but extremely usefull for application builders.

I already create a utalitarian OMA editor that works on any given array to
add, edit, and delete nodes or sub-arrays.

The OMA schema consists of:


object instance identifier

libs to load prior to any calls.

screen caller

action caller

default screen

default action

All screens


All events for each screen


args for event



<hr>

9 Jan 2003 (updated 4 Aug 2011 at 18:16 UTC) »
8 Jan 2003 (updated 4 Aug 2011 at 18:16 UTC) »
8 Jan 2003 (updated 4 Aug 2011 at 18:16 UTC) »

Object Model Array (OMA) Editor.

I am creating a OMA web editor that allows you to add, edit, delete, copy (save as new), move up, or move down an infinite depth tree array. Mostly finished except for the move up and down part.

Infinite depth and recursivity are the hallmarks of great language constructs.

Save, Commit, Rollback.

I am emulating the above within my CSV text db layer. Basically works by making a temp copy of the recordset object requested.

So we have two copies to work with.

The temp copy is only used as a backup.
All temp copies are serialized and cached and not dragged along.

When a save and change occurs to our recordset CSV object the working copy does change and a new temp is made of that new object. The recordset is now locked to the editing end user only, it is still viewable but not editable to others.

So, to the end user the object appears changed but only to them. When they want to commit the changes they become permanent and all related recordset object serialized caches are destroyed. The changes to the recordset object once commited are now present to other end users and unlocked.

On a rollback command we rollback to each previous temp object serialized cache state for our recordset object.

For a discard all or rollback all we discard all changes and all temp objects except the first one which replaces the current active, no changes are saved, and the recordset object is unlocked to editing to other allowed end users.

Now, defining our recordset can be simplistic such as by db.table or smarter by db.table.primary_id_row.

The concept is similar to my db Smart Caching one except it is not for simply caching select recordsets for end users viewing but for end users editing.

This is a simple way to add a transactional quality to small or text type databases.

PRAX is BAX.

I was going over some XML database routines and recalled the PRAX PHP port from Perl and why I didn't like it several years ago.

It is a simple and well done PHP class that handles a XML file as a recordset object of database fields and values. It takes a given XML file with a given XML file node, as a table, and returns a easy to use object to reference that specific XML file node or table as db rows.

The problem was the PRAX record XML objects didn't contain the XML attributes. In my PHP Object dbs I always use properties as a separate table that is associated to my main objects table as row attributes.

For instance, a table for a faq might have lots of attributes such as IP adde, date etc... within the content table, I don't like that. Since these might change I put those parts of a table (attributes) into a separate one and relate them. This way it is easier and quicker to handle a row's property values.

I decided to add that ability to the PRAX lib.

369 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!