473,656 Members | 2,776 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Creating interactive user-controlled ordering mechanisms on admin web interfaces?

(originally posted to one of macromedia's groups; no help, so hopefully
someone here can help me out. I'm using VBScript ASP.)

When designing administrative interfaces to websites, we often need to
provide users with a mechanism to change the order of items that are listed
on the page.

I have not come up with a graceful and elegant way to offer an interactive
ordering capability on administration forms, as you see in many desktop
apps. You can design various hacks -- say, allowing the user to designate
items "high priority" to trump mechanized ordering solutions, or allow the
user to assign an order integer or letter to each items. However, all of
these methods have a hacky, sucky quality to them.

What I would like is a means of allowing users an easy-to-use and
interactive way to adjust the order of listed records. Ideally I would like
some way that the user could select an item and/or make a single item go up
and down in the list on the admin page, and have that list order reflected
on the final page. Perhaps you print an imagemap "up" and "down" arrow
adjacent each listing, and pressing the "up" or down" button moves it up or
down. Or perhaps you have some client-side javascript widget that allows
selection and then movement via a single set of up/down controls.

There's three components to this: how you handle the ordering on the
database side, how you handle the UI issues on the web application, and how
you update the database information appropriately based on the user's input.

The hardest part of this problem is figuring out what needs to happen on the
database side: you have a collection of "ordering" values, with one each
presumably associated with each database record, and presumably you need ALL
the items updated for the collection of items you're administering.
Otherwise, you end up with messed-up situations where there are two
identically ordered items and the application doesn't know the right thing
to do.

Or maybe you somehow store the list order of items for a "publicatio n" in a
single field on tblPubs, split the itemIDs out into an array, and update as
necessary. Somehow this approach feels like it may invite the wrath of the
database purity zealots, and it may not work well for open-ended
publications (e.g. an online newspaper that is continually updated.)

There may be a widget in ASP that's a cousin to concept like "queues" or
"stacks" that could help us.

Answering a small piece of my own question: this article has some tidbits
that may help:
http://www.4guysfromrolla.com/webtech/102799-1.shtml

Some smart person out there has solved this, and maybe you even have a link
to an article or tutorial. Can anyone suggest a solution and/or a starting
point?

Thanks,
KF


Jul 19 '05 #1
6 2394
On Wed, 31 Dec 2003 10:27:55 -0800, "Ken Fine"
<ke*****@u.wash ington.edu> wrote:
(originally posted to one of macromedia's groups; no help, so hopefully
someone here can help me out. I'm using VBScript ASP.)

When designing administrative interfaces to websites, we often need to
provide users with a mechanism to change the order of items that are listed
on the page.

I have not come up with a graceful and elegant way to offer an interactive
ordering capability on administration forms, as you see in many desktop
apps. You can design various hacks -- say, allowing the user to designate
items "high priority" to trump mechanized ordering solutions, or allow the
user to assign an order integer or letter to each items. However, all of
these methods have a hacky, sucky quality to them.

What I would like is a means of allowing users an easy-to-use and
interactive way to adjust the order of listed records. Ideally I would like
some way that the user could select an item and/or make a single item go up
and down in the list on the admin page, and have that list order reflected
on the final page. Perhaps you print an imagemap "up" and "down" arrow
adjacent each listing, and pressing the "up" or down" button moves it up or
down. Or perhaps you have some client-side javascript widget that allows
selection and then movement via a single set of up/down controls.

There's three components to this: how you handle the ordering on the
database side, how you handle the UI issues on the web application, and how
you update the database information appropriately based on the user's input.


Okay, the first is easy enough to follow, but I'm not sure I
agree/understand these three "components ". The database doesn't care
what order the records are in, you only care on the user interface.
If you have to reload them in the same order in a different session,
create a table called UIOrder with two fields, the item number (or
whatever ID you use to identify unique records in your other table(s)
) and the order number. You'll need to update the order number for
all records, which may be a performance issue, but it's a small table
with only two columns and you could probably do a bulk update. I
can't imagine you'd be trying to have a user set an order for a
thousand items in a table anyway. This gets even simpler if you don't
need to maintain the order past the session, since you should be able
to use client-side code to do it.

Jeff
Jul 19 '05 #2
ljb
The code here will client-side sort an html table on any column. The sorted
order does not persist for the next session. Large tables may take a long
time to sort.

http://www.romankoch.ch/capslock/tablesort.htm

LJB
Jul 19 '05 #3
"ljb" wrote:

The code here will client-side sort an html table on any
column. The sorted order does not persist for the next
session. Large tables may take a long time to sort.


Error: document.all is not a function
Source File: http://www.romankoch.ch/capslock/tablesort.htm
Line: 70
--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use
of this email address implies consent to these terms. Please do not contact
me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.
Jul 19 '05 #4
ljb
I don't think I can help. The page,
http://www.romankoch.ch/capslock/tablesort.htm, works fine for me in IE6. I
use the code in my own pages without any problems either.

LJB

"Dave Anderson" <GT**********@s pammotel.com> wrote in message
news:ux******** ********@TK2MSF TNGP09.phx.gbl. ..
"ljb" wrote:

The code here will client-side sort an html table on any
column. The sorted order does not persist for the next
session. Large tables may take a long time to sort.


Error: document.all is not a function
Source File: http://www.romankoch.ch/capslock/tablesort.htm
Line: 70

Jul 19 '05 #5
On Wed, 31 Dec 2003 14:17:51 -0600, "Dave Anderson"
<GT**********@s pammotel.com> wrote:
in <ux************ **@TK2MSFTNGP09 .phx.gbl>
"ljb" wrote:

The code here will client-side sort an html table on any
column. The sorted order does not persist for the next
session. Large tables may take a long time to sort.


Error: document.all is not a function
Source File: http://www.romankoch.ch/capslock/tablesort.htm
Line: 70


It also works great in Opera 7.20 which is generally more
finicky. What browser are you using?
Jul 19 '05 #6
"Stefan Berglund" wrote:

Error: document.all is not a function
It also works great in Opera 7.20 which is generally more
finicky.


Shame on Opera for supporting document.all.

What browser are you using?


Exactly my point. If the code were written to W3C standards, you wouldn't
need to ask that question. For what it's worth, I use:
Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.5) Gecko/20031007
--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use
of this email address implies consent to these terms. Please do not contact
me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.
Jul 19 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
1746
by: Darren Dale | last post by:
Hello, I use Python for interactive data analysis, coming recently from Matlab. One thing I am missing is a variable browser. The problem with vars() is that it lists everything loaded in the session. Try using the excellent matplotlib package and you'll see my dilemma. Could another namespace could be added on the python search path, one that only held variables created by the user (as opposed to imported by modules)? Or does...
0
1467
by: flat_ross | last post by:
I have a service running under SYSTEM in XP that needs to notify the interactive user. From all of my newsgroup reading it looks like it is no longer acceptable to set the service as "Interact with Desktop". I have no problem with that because I actually want to notify certain interactive users. So under Terminal Services or Fast User Switching, I only want to notify a particular interactive user. I could run a second service or exe...
2
1700
by: Allan Adler | last post by:
In C, I can execute system("gs gleep.ps"); and have C run a ghostscript program gleep.ps, which might ask for user input and, when it gets it, take some actions and report back to the C program. I think I can probably handle that last step by having ghostscript write to a file and have the C program read the file. That's ok for one interactive program. Suppose I want to have two or more
6
2621
by: Jerry Spence1 | last post by:
Why doesn't the following work in my ASP program? I have imported ADOX I am trying to create a temporary database on the user's PC. The example is taken from Microsoft. Dim cat As Catalog = New Catalog cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\NewMDB.mdb;" & _
2
1998
by: WJ | last post by:
I have three ASPX pages: 1. "WebForm1.aspx" is interactive, responsible for calling a web site (https://www.payMe.com) with $$$. It is working fine. 2. "WebForm2.aspx" is non-interactive, a listener in my site to capture a "STATUS_CD" returned by www.payMe.com. It is working fine. 3. "WebForm3.aspx" is interactive page, responsibe to display the STATUS CODE "POSTED" by "WebForm2.aspx". 4. My goal is to use "WebForm2.aspx" to call...
3
4605
by: Lubomir | last post by:
Hi, I read that interactive windows services will not be allowed to run under Wista. I would like to ask what exactly is the interactive service. It is supposed to be a service that communicates with desktop. What about the following scenario: A service will create a thread. This thread will create and run an UI Windows application that manages task bar and so on on a desktop. This application will communicate with the service: a/ by...
5
2107
by: outstretchedarm | last post by:
I'm extremely new to javascript and to programming in general. I am trying to create an interactive table. I have already created the table with constants, in the key of C (it is for music). what I would like to do is to create a dropdown box that would enable the user to select all 12 keys, then based on that choice, have the whole table re-calculate, basically transposing all the data up or down. how would I go about doing this.
2
3023
by: daokfella | last post by:
I'm hoping someone could get me started on this. I have an ASP.Net website that collects information from users for my organization. I now have a large SQL Server database that I'd like to convert to and create an interactive DVD directory for my members that can be viewed from a DVD player and television (as well as a PC). I guess this would function just like an advanced DVD menu. I'd like this to have audio and video in addition to...
3
2163
by: psbasha | last post by:
Hi, I would like to call the same aplication executable with and without Graphical User Interface. Requirement: With Tkinter User interface,user can give the inputs to run the application ( Interactive). Instead user will have this inputs in the file and it will be read by the batch utility or exe for the application For example:
4
3010
by: Philipp.Weissenbacher | last post by:
Hi all! I wrote the following as a test case for a menu based programme: #include <iostream> #include <cstring> using namespace std; #define cls system("cls") const int SIZE = 10;
0
8382
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8297
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8816
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8717
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
8498
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
1
6162
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
4150
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
2
1930
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
2
1600
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.