Assignment patch

Alex Leverington admin@networkessence.net
Mon, 29 Oct 2001 02:12:20 -0600


---------------------- multipart/mixed attachment

Here is patch to enable assignment function.

Here is sql table to go with function:

CREATE TABLE user (
  id varchar(32) DEFAULT '' NOT NULL,
  name varchar(64),
  email varchar(96),
  PRIMARY KEY (id)
);

Here is example data:

INSERT INTO user VALUES ('1','user1','user1@example.com');
INSERT INTO user VALUES ('2','user2','user2@example.com');

This will allow assigning the tickets to user1 or user2 based on their username
or email address and adds a dropdown box to pick between username or email
format to the details.php form. This only allows user assigning using whups
users local to this table. Once user auth and user backend is completed for
whups, the assignment will be able to interact with those users as well, but
that will be in a later patch. This is so the assignment function can be used
now. This patch also changes the details.php page to show
'Owner    <a href=mailto:user1@example.com>user1</a>'
instead of just showing a user's ID number (which I think was the authors
original intention because the owner was already to use getEmailType() for
display ;).

I will need to cleanup the user type a little so it's more inline with the rest
of the code, but hat will come later as well.

*Hopefully this can be review and applied to cvs so I don't have a weirded out
whups tree :-)

---------------------- multipart/mixed attachment
W3Jvb3QgaG9yZGVdIyBjdnMgLXozIGRpZmYgd2h1cHMNCj8gd2h1cHMvbGliL0JhY2tlbmQvc3Fs
LmJhY2t1cC5waHANCmN2cyBzZXJ2ZXI6IERpZmZpbmcgd2h1cHMNCkluZGV4OiB3aHVwcy9kZXRh
aWxzLnBocA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9yZXBvc2l0b3J5L3dodXBzL2RldGFpbHMu
cGhwLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS44DQpkaWZmIC11IC1yMS44IGRldGFpbHMucGhw
DQotLS0gd2h1cHMvZGV0YWlscy5waHAgICAyMDAxLzEwLzA2IDE5OjA3OjMwICAgICAxLjgNCisr
KyB3aHVwcy9kZXRhaWxzLnBocCAgIDIwMDEvMTAvMjkgMDg6MDc6MDcNCkBAIC03Nyw2ICs3Nyw3
IEBADQogICAgICAgICAgICAgJGFzc2lnbmZvcm0yLT5nZXRJbmZvKCR2YXJzLCAkaW5mbyk7DQog
ICAgICAgICAgICAgJGJhY2tlbmQtPmFzc2lnblRpY2tldCgkaW5mbyk7DQogICAgICAgICAgICAg
JHZhcnMtPnVuc2V0VmFyKCdhc3NpZ25lZScpOw0KKyAgICAgICAgICAgJHZhcnMtPnVuc2V0VmFy
KCd1c2VydHlwZScpOw0KICAgICAgICAgICAgICR2YXJzLT51bnNldFZhcignbmV3Y29tbWVudCcp
Ow0KICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAkZnJvbSA9ICdhc3NpZ250aWNrZXRz
dGVwMWZvcm0nOw0KY3ZzIHNlcnZlcjogRGlmZmluZyB3aHVwcy9jb25maWcNCmN2cyBzZXJ2ZXI6
IERpZmZpbmcgd2h1cHMvZG9jcw0KY3ZzIHNlcnZlcjogRGlmZmluZyB3aHVwcy9ncmFwaGljcw0K
Y3ZzIHNlcnZlcjogRGlmZmluZyB3aHVwcy9saWINCkluZGV4OiB3aHVwcy9saWIvQmFja2VuZC5w
aHANCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvcmVwb3NpdG9yeS93aHVwcy9saWIvQmFja2VuZC5w
aHAsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjcNCmRpZmYgLXUgLXIxLjcgQmFja2VuZC5waHAN
Ci0tLSB3aHVwcy9saWIvQmFja2VuZC5waHAgICAgICAgMjAwMS8xMC8xMCAxNDoxNjo1OCAgICAg
MS43DQorKysgd2h1cHMvbGliL0JhY2tlbmQucGhwICAgICAgIDIwMDEvMTAvMjkgMDg6MDc6MTAN
CkBAIC0xNCw3ICsxNCw3IEBADQogICogV2h1cHNfQmFja2VuZCBDbGFzcw0KICAqDQogICogQGF1
dGhvciBSb2JlcnQgRS4gQ295bGUgPHJvYmVydGVjb3lsZUBob3RtYWlsLmNvbT4NCi0gKiBAdmVy
c2lvbiAkUmV2aXNpb246IDEuNyAkDQorICogQHZlcnNpb24gJFJldmlzaW9uOiAxLjYgJA0KICAq
IEBwYWNrYWdlIHdodXBzDQogICovDQogY2xhc3MgV2h1cHNfQmFja2VuZCB7DQpAQCAtNjUsNyAr
NjUsOCBAQA0KICAgICB9DQogDQogICAgIGZ1bmN0aW9uIG5vdGlmeUFzc2lnbm1lbnQoJiRvbGRk
ZXRhaWxzLCAmJGNvbW1lbnQsICRvd25lcm5hbWUsICRvd25lcmVtYWlsLCAkbmV3c3RhdGUpIHsN
Ci0gICAgICAgICRteWRldGFpbHMgPSAkdGhpcy0+Z2V0VXNlckRldGFpbHMoQXV0aDo6Z2V0QXV0
aCgpKTsNCisgICAgICAgICRteWRldGFpbHMgPSAkdGhpcy0+Z2V0VXNlckRldGFpbHNGcm9tRW1h
aWwoQXV0aDo6Z2V0QXV0aCgpKTsNCisgICAgICAgJG15ZGV0YWlscyA9ICRteWRldGFpbHNbMF07
DQogDQogICAgICAgICAkbXluYW1lID0gJG15ZGV0YWlsc1snbmFtZSddOw0KICAgICAgICAgJG15
ZW1haWwgPSAkbXlkZXRhaWxzWydlbWFpbCddOw0KSW5kZXg6IHdodXBzL2xpYi9Gb3Jtcy5waHAN
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0NClJDUyBmaWxlOiAvcmVwb3NpdG9yeS93aHVwcy9saWIvRm9ybXMucGhwLHYN
CnJldHJpZXZpbmcgcmV2aXNpb24gMS42DQpkaWZmIC11IC1yMS42IEZvcm1zLnBocA0KLS0tIHdo
dXBzL2xpYi9Gb3Jtcy5waHAgMjAwMS8xMC8wNiAwNDozMTozOSAgICAgMS42DQorKysgd2h1cHMv
bGliL0Zvcm1zLnBocCAyMDAxLzEwLzI5IDA4OjA3OjEwDQpAQCAtMTIsNyArMTIsNyBAQA0KICAq
IFR5cGUgQ2xhc3MNCiAgKg0KICAqIEBhdXRob3IgUm9iZXJ0IEUuIENveWxlIDxyb2JlcnRlY295
bGVAaG90bWFpbC5jb20+DQotICogQHZlcnNpb24gJFJldmlzaW9uOiAxLjYgJA0KKyAqIEB2ZXJz
aW9uICRSZXZpc2lvbjogMS40ICQNCiAgKiBAcGFja2FnZSB3aHVwcw0KICAqLw0KIGNsYXNzIFR5
cGUgew0KQEAgLTE0MSw5ICsxNDEsMTMgQEANCiAgICAgfQ0KIA0KICAgICBmdW5jdGlvbiBpc1Zh
bGlkKCYkdmFycywgJHZhbHVlLCAmJG1lc3NhZ2UpIHsNCisgICAgICAgJHVpZHR5cGUgPSAkdmFy
cy0+Z2V0VmFyKCd1c2VydHlwZScpOw0KKyAgICAgICBpZigkdWlkdHlwZT09JzEnKQ0KICAgICAg
ICAgJHVpZCA9ICR0aGlzLT5iYWNrZW5kLT5nZXRVc2VyRnJvbUVtYWlsKCR2YWx1ZSk7DQorICAg
ICAgIGlmKCR1aWR0eXBlPT0nMicpDQorICAgICAgICR1aWQgPSAkdGhpcy0+YmFja2VuZC0+Z2V0
VXNlckZyb21OYW1lKCR2YWx1ZSk7DQogDQotICAgICAgICBpZiAoISR1aWQpIHsNCisgICAgICAg
IGlmICghaXNzZXQoJHVpZCkpIHsNCiAgICAgICAgICAgICAkbWVzc2FnZSA9ICJubyBzdWNoIHVz
ZXIgIiAuIGh0bWxzcGVjaWFsY2hhcnMoJHZhbHVlKTsNCiAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7DQogICAgICAgICB9DQpJbmRleDogd2h1cHMvbGliL1NlYXJjaC5waHANCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0N
ClJDUyBmaWxlOiAvcmVwb3NpdG9yeS93aHVwcy9saWIvU2VhcmNoLnBocCx2DQpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuNg0KZGlmZiAtdSAtcjEuNiBTZWFyY2gucGhwDQotLS0gd2h1cHMvbGliL1Nl
YXJjaC5waHAgICAgICAgIDIwMDEvMTAvMDYgMTY6NDc6MTYgICAgIDEuNg0KKysrIHdodXBzL2xp
Yi9TZWFyY2gucGhwICAgICAgICAyMDAxLzEwLzI5IDA4OjA3OjEwDQpAQCAtMTQsNyArMTQsNyBA
QA0KICAqIFNlYXJjaEZvcm0gQ2xhc3MNCiAgKg0KICAqIEBhdXRob3IgUm9iZXJ0IEUuIENveWxl
IDxyb2JlcnRlY295bGVAaG90bWFpbC5jb20+DQotICogQHZlcnNpb24gJFJldmlzaW9uOiAxLjYg
JA0KKyAqIEB2ZXJzaW9uICRSZXZpc2lvbjogMS4zICQNCiAgKiBAcGFja2FnZSB3aHVwcw0KICAq
Lw0KIGNsYXNzIFNlYXJjaEZvcm0gZXh0ZW5kcyBGb3JtIHsNCkBAIC0xMTIsMTMgKzExMiwxOSBA
QA0KICAgICBmdW5jdGlvbiBBc3NpZ25UaWNrZXRTdGVwMUZvcm0oJiR2YXJzLCAmJGJhY2tlbmQp
IHsNCiAgICAgICAgICR0aGlzLT5Gb3JtKCdhc3NpZ250aWNrZXRzdGVwMWZvcm0nKTsNCiANCisg
ICAgICAgJHR5cGUgPSAkdmFycy0+Z2V0VmFyKCd0eXBlJyk7DQorICAgICAgICR1c2VydHlwZXMg
PSAkYmFja2VuZC0+Z2V0VXNlclR5cGVzKCR0eXBlKTsNCisgICAgICAgJHVzZXJ0eXBlcyA9IG5l
dyBFbnVtVHlwZSgkdXNlcnR5cGVzKTsNCisNCiAgICAgICAgICR2YXIxID0gbmV3IFZhcmlhYmxl
KCdUaWNrZXQgVHlwZScsICd0eXBlJywgZ2V0SW50VHlwZSgpLCB0cnVlLCB0cnVlLCB0cnVlKTsN
CiAgICAgICAgICR2YXIyID0gbmV3IFZhcmlhYmxlKCdUaWNrZXQgSUQnLCAnaWQnLCBnZXRJbnRU
eXBlKCksIHRydWUsIHRydWUsIHRydWUpOw0KICAgICAgICAgJHZhcjMgPSBuZXcgVmFyaWFibGUo
J0Fzc2lnbmVlJywgJ2Fzc2lnbmVlJywgZ2V0VXNlclR5cGUoJGJhY2tlbmQpLCB0cnVlKTsNCisg
ICAgICAgJHZhcjQgPSBuZXcgVmFyaWFibGUoJ0Fzc2lnbmVlIFR5cGUnLCAndXNlcnR5cGUnLCAk
dXNlcnR5cGVzLCB0cnVlKTsNCiANCiAgICAgICAgICR0aGlzLT5hZGRWYXJpYWJsZSgkdmFyMSk7
DQogICAgICAgICAkdGhpcy0+YWRkVmFyaWFibGUoJHZhcjIpOw0KICAgICAgICAgJHRoaXMtPmFk
ZFZhcmlhYmxlKCR2YXIzKTsNCisgICAgICAgJHRoaXMtPmFkZFZhcmlhYmxlKCR2YXI0KTsNCiAg
ICAgfQ0KIH0NCiANCmN2cyBzZXJ2ZXI6IERpZmZpbmcgd2h1cHMvbGliL0JhY2tlbmQNCkluZGV4
OiB3aHVwcy9saWIvQmFja2VuZC9zcWwucGhwDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL3JlcG9z
aXRvcnkvd2h1cHMvbGliL0JhY2tlbmQvc3FsLnBocCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEu
MTENCmRpZmYgLXUgLXIxLjExIHNxbC5waHANCi0tLSB3aHVwcy9saWIvQmFja2VuZC9zcWwucGhw
ICAgMjAwMS8xMC8xMCAxNDoxNjo1OSAgICAgMS4xMQ0KKysrIHdodXBzL2xpYi9CYWNrZW5kL3Nx
bC5waHAgICAyMDAxLzEwLzI5IDA4OjA3OjExDQpAQCAtMTIsNyArMTIsNyBAQA0KICAqIFdodXBz
X0JhY2tlbmRfc3FsIENsYXNzDQogICoNCiAgKiBAYXV0aG9yIFJvYmVydCBFLiBDb3lsZSA8cm9i
ZXJ0ZWNveWxlQGhvdG1haWwuY29tPg0KLSAqIEB2ZXJzaW9uICRSZXZpc2lvbjogMS4xMSAkDQor
ICogQHZlcnNpb24gJFJldmlzaW9uOiAxLjIgJA0KICAqIEBwYWNrYWdlIHdodXBzDQogICovDQog
Y2xhc3MgV2h1cHNfQmFja2VuZF9zcWwgZXh0ZW5kcyBXaHVwc19CYWNrZW5kIHsNCkBAIC05OSwx
MyArOTksMTkgQEANCiANCiAgICAgZnVuY3Rpb24gYXNzaWduVGlja2V0KCYkaW5mbykgew0KICAg
ICAgICAgJHRpY2tldF9pZCA9ICRpbmZvWydpZCddOw0KLSAgICAgICAgJGVtYWlsID0gJGluZm9b
J2Fzc2lnbmVlJ107DQorICAgICAgICAkYXNzaWduZWUgPSAkaW5mb1snYXNzaWduZWUnXTsNCisg
ICAgICAgJHVzZXJ0eXBlID0gJGluZm9bJ3VzZXJ0eXBlJ107DQogICAgICAgICAkc3RhdGUgPSAk
aW5mb1sndG9zdGF0ZSddOw0KICAgICAgICAgJG1vcmVjb21tZW50ID0gJGluZm9bJ25ld2NvbW1l
bnQnXTsNCiANCi0gICAgICAgICRkZXRhaWxzID0gJHRoaXMtPmdldFVzZXJEZXRhaWxzRnJvbUVt
YWlsKCRlbWFpbCk7DQorICAgICAgIGlmKCR1c2VydHlwZT09JzEnKQ0KKyAgICAgICAgeyAkZGV0
YWlscyA9ICR0aGlzLT5nZXRVc2VyRGV0YWlsc0Zyb21FbWFpbCgkYXNzaWduZWUpOyAkZGV0YWls
cyA9ICRkZXRhaWxzWzBdOyB9DQorICAgICAgIGlmKCR1c2VydHlwZT09JzInKQ0KKyAgICAgICB7
ICRkZXRhaWxzID0gJHRoaXMtPmdldFVzZXJEZXRhaWxzRnJvbU5hbWUoJGFzc2lnbmVlKTsgJGRl
dGFpbHMgPSAkZGV0YWlsc1swXTsgfQ0KKw0KICAgICAgICAgJGFzc2lnbmVlID0gJGRldGFpbHNb
J2lkJ107DQogICAgICAgICAkbmFtZSA9ICRkZXRhaWxzWyduYW1lJ107DQorICAgICAgICRlbWFp
bCA9ICRkZXRhaWxzWydlbWFpbCddOw0KIA0KICAgICAgICAgJGNvbW1lbnQgPSAiQXNzaWduZWQg
dGlja2V0IHRvICRuYW1lIDwkZW1haWw+IjsNCiANCkBAIC0yMzQsOCArMjQwLDE0IEBADQogICAg
ICAgICB9DQogDQogICAgICAgICBpZiAoIWVtcHR5KCRyZXN1bHRbJ3VzZXJfaWRfb3duZXInXSkp
IHsNCi0gICAgICAgICAgICAkcmVzdWx0Wydfb3duZXJfbmFtZSddID0gJHJlc3VsdFsnb3duZXIn
XTsNCi0gICAgICAgICAgICAkcmVzdWx0Wydfb3duZXInXSA9ICRyZXN1bHRbJ293bmVyJ107DQor
ICAgICAgICAgICAgJHRpY2tldF9vd25lcl9kZXRhaWxzID0gJHRoaXMtPmdldFVzZXJEZXRhaWxz
KCRyZXN1bHRbJ3VzZXJfaWRfb3duZXInXSk7DQorICAgICAgICAgICAgJHRpY2tldF9vd25lcl9k
ZXRhaWxzID0gJHRpY2tldF9vd25lcl9kZXRhaWxzWzBdOw0KKw0KKyAgICAgICAgICAgICRyZXN1
bHRbJ19vd25lcl9uYW1lJ10gPSAkdGlja2V0X293bmVyX2RldGFpbHNbJ25hbWUnXTsNCisgICAg
ICAgICAgICAkcmVzdWx0Wydfb3duZXJfZW1haWwnXSA9ICR0aWNrZXRfb3duZXJfZGV0YWlsc1sn
ZW1haWwnXTsNCisNCisgICAgICAgICAgICAkcmVzdWx0Wydfb3duZXInXSA9ICRyZXN1bHRbJ19v
d25lcl9lbWFpbCddOw0KKw0KICAgICAgICAgfQ0KICAgICAgICAgDQogICAgICAgICByZXR1cm4g
JHJlc3VsdDsNCkBAIC0yNzEsNiArMjgzLDEyIEBADQogICAgICAgICByZXR1cm4gJHRoaXMtPl9n
ZXRBc3NvYygnU0VMRUNUIHR5cGVfaWQsIHR5cGVfbmFtZSBGUk9NIHdodXBzX3R5cGVzJyk7DQog
ICAgIH0NCiANCisgICAgZnVuY3Rpb24gZ2V0VXNlclR5cGVzKCkNCisgICAgew0KKyAgICAgICBy
ZXR1cm4gYXJyYXkoJzEnID0+ICdFbWFpbCBBZGRyZXNzJywNCisgICAgICAgICAgICAgICAgICAg
ICcyJyA9PiAnVXNlciBOYW1lJyk7DQorICAgIH0NCisNCiAgICAgZnVuY3Rpb24gZ2V0U3RhdGVz
KCR0eXBlLCAkY2F0ZWdvcnkgPSAnJywgJG5vdGNhdGVnb3J5ID0gJycpDQogICAgIHsNCiAgICAg
ICAgICR3aGVyZSA9ICJ0eXBlX2lkID0gJHR5cGUiOw0KQEAgLTMwMSwxNyArMzE5LDI2IEBADQog
ICAgICAgICByZXR1cm4gJHRoaXMtPl9nZXRPbmUoIlNFTEVDVCBpZCBGUk9NIHVzZXIgV0hFUkUg
ZW1haWwgPSAkZW1haWwiKTsNCiAgICAgfQ0KIA0KKyAgICBmdW5jdGlvbiBnZXRVc2VyRnJvbU5h
bWUoJHVzZXJuYW1lKQ0KKyAgICB7DQorICAgICAgIHJldHVybiAkdGhpcy0+X2dldE9uZSgiU0VM
RUNUIGlkIEZST00gdXNlciBXSEVSRSBuYW1lID0gJHVzZXJuYW1lIik7DQorICAgIH0NCisNCiAg
ICAgZnVuY3Rpb24gZ2V0VXNlckRldGFpbHMoJGlkKQ0KKyAgICB7DQorICAgICAgICByZXR1cm4g
JHRoaXMtPl9nZXRBbGwoIlNFTEVDVCB1c2VyLmlkLCB1c2VyLm5hbWUsIHVzZXIuZW1haWwgRlJP
TSB1c2VyIFdIRVJFIGlkID0gJGlkIik7DQorICAgIH0NCisNCisgICAgZnVuY3Rpb24gZ2V0VXNl
ckRldGFpbHNGcm9tTmFtZSgkbmFtZSkNCiAgICAgew0KLSAgICAgICAgJHJlc3VsdCA9ICR0aGlz
LT5fZ2V0QWxsKCJTRUxFQ1QgbmFtZSwgZW1haWwgRlJPTSB1c2VyIFdIRVJFIGlkID0gJGlkIik7
DQotICAgICAgICByZXR1cm4gJHJlc3VsdFswXTsNCisgICAgICAgJG5hbWUgPSAkdGhpcy0+ZGIt
PnF1b3RlKCRuYW1lKTsNCisgICAgICAgcmV0dXJuICR0aGlzLT5fZ2V0QWxsKCJTRUxFQ1QgdXNl
ci5pZCwgdXNlci5uYW1lLCB1c2VyLmVtYWlsIEZST00gdXNlciBXSEVSRSBuYW1lID0gJG5hbWUi
KTsNCiAgICAgfQ0KIA0KICAgICBmdW5jdGlvbiBnZXRVc2VyRGV0YWlsc0Zyb21FbWFpbCgkZW1h
aWwpDQogICAgIHsNCiAgICAgICAgICRlbWFpbCA9ICR0aGlzLT5kYi0+cXVvdGUoJGVtYWlsKTsN
Ci0gICAgICAgICRyZXN1bHQgPSAkdGhpcy0+X2dldEFsbCgiU0VMRUNUIGlkLCBuYW1lIEZST00g
dXNlciBXSEVSRSBlbWFpbCA9ICRlbWFpbCIpOw0KLSAgICAgICAgcmV0dXJuICRyZXN1bHRbMF07
DQorICAgICAgICByZXR1cm4gJHRoaXMtPl9nZXRBbGwoIlNFTEVDVCB1c2VyLmlkLCB1c2VyLm5h
bWUsIHVzZXIuZW1haWwgRlJPTSB1c2VyIFdIRVJFIGVtYWlsID0gJGVtYWlsIik7DQogICAgIH0N
CiANCiAgICAgZnVuY3Rpb24gZ2V0VXNlclNlYXJjaGVzKCR1c2VyKQ0KY3ZzIHNlcnZlcjogRGlm
ZmluZyB3aHVwcy9zY3JpcHRzDQpjdnMgc2VydmVyOiBEaWZmaW5nIHdodXBzL3NjcmlwdHMvYmFj
a2VuZA0KY3ZzIHNlcnZlcjogRGlmZmluZyB3aHVwcy90ZW1wbGF0ZXMNCmN2cyBzZXJ2ZXI6IERp
ZmZpbmcgd2h1cHMvdGVtcGxhdGVzL2luZGV4

---------------------- multipart/mixed attachment--