Annotation of FreeBSD/tinderbox/webui/module/moduleSession.php, revision 1.1.1.1.2.1

1.1       as          1: <?php
                      2: #-
                      3: # Copyright (c) 2005 Oliver Lehmann <oliver@FreeBSD.org>
                      4: # All rights reserved.
                      5: #
                      6: # Redistribution and use in source and binary forms, with or without
                      7: # modification, are permitted provided that the following conditions
                      8: # are met:
                      9: # 1. Redistributions of source code must retain the above copyright
                     10: #      notice, this list of conditions and the following disclaimer
                     11: # 2. Redistributions in binary form must reproduce the above copyright
                     12: #      notice, this list of conditions and the following disclaimer in the
                     13: #      documentation and/or other materials provided with the distribution.
                     14: #
                     15: # THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
                     16: # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     17: # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     18: # ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
                     19: # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     20: # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     21: # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     22: # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     23: # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     24: # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     25: # SUCH DAMAGE.
                     26: #
1.1.1.1.2.1! as         27: # $Paefchen$
1.1       as         28: # $MCom: portstools/tinderbox/webui/module/moduleSession.php,v 1.3 2005/07/21 11:28:29 oliver Exp $
                     29: #
                     30: 
                     31: class moduleSession extends module {
                     32: 
1.1.1.1.2.1! as         33:        public function setAttribute( $attribute, $value ) {
        !            34:                if(! session_id() ) {
        !            35:                        if(! $this->start() ) {
1.1       as         36:                                return false;
                     37:                        }
                     38:                }
                     39: 
                     40:                $_SESSION[$attribute] = $value;
                     41:                return true;
                     42:        }
                     43: 
1.1.1.1.2.1! as         44:        public function getAttribute( $attribute ) {
1.1       as         45:                if( isset( $_SESSION[$attribute] ) ) {
                     46:                        return $_SESSION[$attribute];
                     47:                } else {
                     48:                        return false;
                     49:                }
                     50:        }
                     51: 
1.1.1.1.2.1! as         52:        public function removeAttribute( $attribute ) {
1.1       as         53:                unset( $_SESSION[$attribute] );
                     54:        }
                     55: 
1.1.1.1.2.1! as         56:        public function start() {
        !            57:                if(! headers_sent() ) {
1.1       as         58:                        session_start();
                     59:                        return true;
                     60:                }
                     61:                return false;
                     62:        }
                     63: 
1.1.1.1.2.1! as         64:        public function __destruct() {
        !            65:                if(session_id()) 
1.1       as         66:                        session_destroy();
                     67:        }
                     68: }
1.1.1.1.2.1! as         69: 
1.1       as         70: ?>