473,382 Members | 1,445 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,382 software developers and data experts.

How do I do this?

Hi,

This is want I want to do, but not sure how to do it:-

I want to create a class that has events, for example a Class called
"Security" that has an event called "Security Changed", I then want to
attach this in some way to some forms and controls and then have the event
"Security Changed" visible in these. Then whenever I fire the event
"Security Changed" from anywhere all open forms/controls with the same event
attached also fire.

I'm after this functionality so that I can setup a password scheme, so that
a user by default has Read Only access to all program forms, but if they
then enter a password all open forms change to Full Access. There are many
ways to accomplish this but the way described above would be much more
manageable.

Is this possible?

Thanks.

Merlin
Nov 20 '05 #1
3 1302
Hi Merlin

This is how i do security in my company management system.

I have a class that as 4 methods BrowseButtons(form),
BrowseMenus(form), ActivateMenus(form) and ActivateButtons
(form). All are called in form_load event. The browse
methods are a precaution if i add a new button or menu
item there are immediatly stored in a sql table with my
user id. The Activates methods read the user acess to
buttons and menus for each form and activate them.

I have a collection of form when the form loads it adds
itself when it unloads it removes itself.

I have a 'Terminate Session' in the main form and i use
the collection to browse all form and calling for each
ActivateMenus(form) and ActivateButtons(form).

The browse and activate methods use
System.Reflection.FieldInfo()

Kind Regards
Jorge Cavalheiro
-----Original Message-----
Hi,

This is want I want to do, but not sure how to do it:-

I want to create a class that has events, for example a Class called"Security" that has an event called "Security Changed", I then want toattach this in some way to some forms and controls and then have the event"Security Changed" visible in these. Then whenever I fire the event"Security Changed" from anywhere all open forms/controls with the same eventattached also fire.

I'm after this functionality so that I can setup a password scheme, so thata user by default has Read Only access to all program forms, but if theythen enter a password all open forms change to Full Access. There are manyways to accomplish this but the way described above would be much moremanageable.

Is this possible?

Thanks.

Merlin
.

Nov 20 '05 #2
"Merlin" <iM*****@hotmail.com> wrote in message news:<c1**********@hercules.btinternet.com>...
Hi,

This is want I want to do, but not sure how to do it:-

I want to create a class that has events, for example a Class called
"Security" that has an event called "Security Changed", I then want to
attach this in some way to some forms and controls and then have the event
"Security Changed" visible in these. Then whenever I fire the event
"Security Changed" from anywhere all open forms/controls with the same event
attached also fire.

I'm after this functionality so that I can setup a password scheme, so that
a user by default has Read Only access to all program forms, but if they
then enter a password all open forms change to Full Access. There are many
ways to accomplish this but the way described above would be much more
manageable.

Is this possible?

Thanks.

Merlin


I possible way to do this is as follows:

In your User Object (the current user with security permissions)
create a property SecurityLevel or something similar
Also create an Event SecurityChanged, fire the event when
SecurityLevel changes

Create an Interface ILockable

Public Interface ILockable
Property Locked() As Boolean
End Interface

have each Form/UserControl implement ILockable

Public Overridable Property Locked() As Boolean Implements
ILockable.Locked
Get
Return m_Locked
End Get
Set(ByVal Value As Boolean)
m_Locked = Value
setLockedState(Value)
End Set
End Property

in each Form/UserControl create a Sub setLockedState(Value) that sets
the state of the controls on the form

In your main form add and handler for the User_SecurityChanged event,
loop though all open forms testing if they implement ILockable. If
they do, set the locked state.

Alternately, have each form listen for the User_SecurityChanged event
and Lock accordingly

k.
Nov 20 '05 #3
Thanks K.

"User" <go****@qwirk.net> wrote in message
news:e4**************************@posting.google.c om...
"Merlin" <iM*****@hotmail.com> wrote in message

news:<c1**********@hercules.btinternet.com>...
Hi,

This is want I want to do, but not sure how to do it:-

I want to create a class that has events, for example a Class called
"Security" that has an event called "Security Changed", I then want to
attach this in some way to some forms and controls and then have the event "Security Changed" visible in these. Then whenever I fire the event
"Security Changed" from anywhere all open forms/controls with the same event attached also fire.

I'm after this functionality so that I can setup a password scheme, so that a user by default has Read Only access to all program forms, but if they
then enter a password all open forms change to Full Access. There are many ways to accomplish this but the way described above would be much more
manageable.

Is this possible?

Thanks.

Merlin


I possible way to do this is as follows:

In your User Object (the current user with security permissions)
create a property SecurityLevel or something similar
Also create an Event SecurityChanged, fire the event when
SecurityLevel changes

Create an Interface ILockable

Public Interface ILockable
Property Locked() As Boolean
End Interface

have each Form/UserControl implement ILockable

Public Overridable Property Locked() As Boolean Implements
ILockable.Locked
Get
Return m_Locked
End Get
Set(ByVal Value As Boolean)
m_Locked = Value
setLockedState(Value)
End Set
End Property

in each Form/UserControl create a Sub setLockedState(Value) that sets
the state of the controls on the form

In your main form add and handler for the User_SecurityChanged event,
loop though all open forms testing if they implement ILockable. If
they do, set the locked state.

Alternately, have each form listen for the User_SecurityChanged event
and Lock accordingly

k.

Nov 20 '05 #4

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

Similar topics

4
by: James | last post by:
I have a from with 2 fields: Company & Name Depening which is completed, one of the following queries will be run: if($Company){ $query = "Select C* From tblsample Where ID = $Company...
5
by: Scott D | last post by:
I am trying to check and see if a field is posted or not, if not posted then assign $location which is a session variable to $location_other. If it is posted then just assign it to...
2
by: Nick | last post by:
Can someone please tell me how to access elements from a multiple selection list? From what ive read on other posts, this is correct. I keep getting an "Undefined variable" error though... Form...
2
by: Alexander Ross | last post by:
I have a variable ($x) that can have 50 different (string) values. I want to check for 7 of those values and do something based on it ... as I see it I have 2 options: 1) if (($x=="one") ||...
0
by: Dan Foley | last post by:
This script runs fine, but I'd like to know why it's so slow.. Thanks for any help out there on how i can make it faster (it might take up to 5 min to write these 3 export files whith 15 records...
5
by: Lee Redeem | last post by:
Hi there I've created abd uploaded this basic PHP script: <html> <head> <title>PHP Test</title> </head> <body> <H1 align="center">
5
by: christopher vogt | last post by:
Hi, i'm wondering if there is something like $this-> to call a method inside another method of the same class without using the classname in front. I actually use class TEST { function...
6
by: Phil Powell | last post by:
Ok guys, here we go again! SELECT s.nnet_produkt_storrelse_navn FROM nnet_produkt_storrelse s, nnet_produkt_varegruppe v, nnet_storrelse_varegruppe_assoc sv, nnet_produkt p WHERE...
1
by: Michel | last post by:
a site like this http://www.dvdzone2.com/dvd Can you make it in PHP and MySQL within 6 weeks? If so, send me your price 2 a r a (at) p a n d o r a . b e
11
by: Maciej Nadolski | last post by:
Hi! I can`t understand what php wants from me:( So: Cannot send session cache limiter - headers already sent (output started at /home/krecik/public_html/silnik.php:208) in...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

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.