[ic] interchange 4.6.1 UI manual installation.

Mike Heins mikeh@minivend.com
Thu, 18 Jan 2001 02:51:27 -0500


Quoting Cameron Germein (cameron.germein@team.eftel.com):
> I'm currently in the process of building a site from scratch in interchange,
> and discovering much to my dismay that there is essentially no documentation
> on actually integrating a site with the UI administrative backend.
> 
> most of this, i can just hack my way past - i'm down to one last issue
> though, and it's got me a little stumped for now.
> 
> i'm working on getting the admin section working with a userdb table that
> doesn't use the default fields contained within the demo - and of course,
> things are breaking. with a bit of field wobbling, i can get it to display
> the right users, but i can't edit them through that interface - and it's
> because when it goes to the next page, it's trying to build it with
> information that doesnt exist in the db, and so therefore 500 errors out.
> SO... my question basically is:
> 
> if i edit the pages in /interchange/lib/UI/, it's going to change for
> everyone, right? well, that's not going to be any good for those clients who
> have different userdb fields, is it, as i run multipla catalogs under the
> one install :) so, what do we do here, guys? is there a solution to this
> one? i'm doing my best as i go along to hack and change stuff to get it
> working, but it's tough going without any documentation on how it plugs
> together. any assistance on what's possible here would be greatly
> appreciated :)

First of all, you can override only the pages needed. In other words,
if you think you want the admin/customer.html file as it is distributed,
but need a different admin/customer_view.html for every catalog, you just
need to make a pages/admin/customer_view.html that is different for every
catalog. In other words, the admin UI is templated and the common pages
are only shown when they don't exist in the catalog directory. It operates
like this (though not using ITL tags like this):

	[if file pages/admin/customer_view.html]
	    [include pages/admin/customer_view.html]
	[else]
	    [include /usr/local/interchange/lib/UI/pages/admin/customer_view.html]
	[/else]
	[/if]

Second, if you look at most of the pages the fields to edit are set
at the top of the page (customer_view.html is an exception, though).
You can usually just set the ui_data_fields variable different to change
the names.

The next version will have all of those things encoded in mv_metadata,
i.e.  the field list for item_feature, item_edit, item_ship,
customer_bill, customer_ship, etc. can be different for every catalog
and is editable from a meta link on the page.

-- 
Akopia, Inc., 131 Willow Lane, Floor 2, Oxford, OH  45056
phone +1.513.523.7621 fax 7501 <heins@akopia.com>

Any man who is under 30, and is not liberal, has not heart; and any man
who is over 30, and is not a conservative, has not brains.
 -- Winston Churchill