fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [7027] print and pdf for contracts


From: lars.nestas
Subject: [Fmsystem-commits] [7027] print and pdf for contracts
Date: Mon, 21 Feb 2011 11:45:10 +0000

Revision: 7027
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=7027
Author:   "lars.nestas"
Date:     2011-02-21 11:45:09 +0000 (Mon, 21 Feb 2011)
Log Message:
-----------
print and pdf for contracts

Modified Paths:
--------------
    trunk/rental/inc/class.uicontract.inc.php
    trunk/rental/setup/phpgw_no.lang

Added Paths:
-----------
    trunk/rental/inc/class.uimakepdf.inc.php
    trunk/rental/templates/base/pdf/
    trunk/rental/templates/base/pdf/css/
    trunk/rental/templates/base/pdf/css/contract.css
    trunk/rental/templates/base/pdf/rental_contract_form_hybler.php
    trunk/rental/templates/base/pdf/rental_contract_form_personalbolig.php
    trunk/rental/templates/base/pdf/rental_contract_hybler.php
    trunk/rental/templates/base/pdf/rental_contract_personalbolig.php

Property Changed:
----------------
    trunk/rental/


Property changes on: trunk/rental
___________________________________________________________________
Added: svn:ignore
   + wkhtmltopdt_test.php

testphp.php


Modified: trunk/rental/inc/class.uicontract.inc.php
===================================================================
--- trunk/rental/inc/class.uicontract.inc.php   2011-02-21 07:59:06 UTC (rev 
7026)
+++ trunk/rental/inc/class.uicontract.inc.php   2011-02-21 11:45:09 UTC (rev 
7027)
@@ -234,23 +234,24 @@
                                        if(!isset($ids) || count($ids) > 0)
                                        {
                                                $value['ajax'][] = false;
-                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.edit', 
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.edit',
                                                                                
                                                                                
        'id' => $value['id'], 
                                                                                
                                                                                
        'initial_load' => 'no',
                                                                                
                                                                                
        'adjustment_id' => $adjustment_id)));
                                                $value['labels'][] = 
lang('edit');
                                                $value['ajax'][] = false;
-                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 
'rental.uicontract.copy_contract', 
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 
'rental.uicontract.copy_contract',
                                                                                
                                                                                
                                        'id' => $value['id'],
                                                                                
                                                                                
                                        'adjustment_id' => $adjustment_id)));
                                                $value['labels'][] = 
lang('copy');
                                        }
                                        $value['ajax'][] = false;
-                                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view', 
+                                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view',
                                                                                
                                                                                
                                        'id' => $value['id'], 
                                                                                
                                                                                
                                        'initial_load' => 'no',
                                                                                
                                                                                
                                        'adjustment_id' => $adjustment_id)));
                                        $value['labels'][] = lang('show');
+                       
                                        break;
                                default:
                                        if(!isset($ids) || count($ids) > 0)
@@ -265,6 +266,9 @@
                                        $value['ajax'][] = false;
                                        $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view', 
'id' => $value['id'], 'initial_load' => 'no')));
                                        $value['labels'][] = lang('show');
+                                       $value['ajax'][] = false;
+                                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uimakepdf.view', 
'id' => $value['id'])));
+                                       $value['labels'][] = lang('make_pdf');
                                }
                }
 

Added: trunk/rental/inc/class.uimakepdf.inc.php
===================================================================
--- trunk/rental/inc/class.uimakepdf.inc.php                            (rev 0)
+++ trunk/rental/inc/class.uimakepdf.inc.php    2011-02-21 11:45:09 UTC (rev 
7027)
@@ -0,0 +1,851 @@
+<?php
+       phpgw::import_class('rental.uicommon');
+       phpgw::import_class('rental.sobilling');
+       phpgw::import_class('rental.socontract');
+       phpgw::import_class('rental.socomposite');
+       phpgw::import_class('rental.sodocument');
+       phpgw::import_class('rental.soinvoice');
+       phpgw::import_class('rental.sonotification');
+       phpgw::import_class('rental.soprice_item');
+       phpgw::import_class('rental.socontract_price_item');
+       phpgw::import_class('rental.soadjustment');
+       phpgw::import_class('rental.soparty');
+       include_class('rental', 'contract', 'inc/model/');
+       include_class('rental', 'party', 'inc/model/');
+       include_class('rental', 'composite', 'inc/model/');
+       include_class('rental', 'price_item', 'inc/model/');
+       include_class('rental', 'contract_price_item', 'inc/model/');
+       include_class('rental', 'notification', 'inc/model/');
+
+       class rental_uimakepdf extends rental_uicommon
+       {
+               public $public_functions = array
+               (
+                       'add'                                   => true,
+                       'add_from_composite'    => true,
+                       'copy_contract'                 => true,
+                       'edit'                                  => true,
+                       'index'                                 => true,
+                       'query'                                 => true,
+                       'view'                                  => true,
+                       'add_party'                             => true,
+                       'remove_party'                  => true,
+                       'add_composite'                 => true,
+                       'remove_composite'              => true,
+                       'set_payer'                             => true,
+                       'add_price_item'                => true,
+                       'remove_price_item'             => true,
+                       'reset_price_item'              => true,
+                       'download'              => true,
+                       'get_total_price'               => true
+               );
+
+               public function __construct()
+               {
+                       parent::__construct();
+                       self::set_active_menu('rental::contracts');
+                       $GLOBALS['phpgw_info']['flags']['app_header'] .= 
'::'.lang('contracts');
+               }
+
+               public function query()
+               {
+                       
if($GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'] > 0)
+                       {
+                               $user_rows_per_page = 
$GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'];
+                       }
+                       else {
+                               $user_rows_per_page = 10;
+                       }
+                       // YUI variables for paging and sorting
+                       $start_index    = phpgw::get_var('startIndex', 'int');
+                       $num_of_objects = phpgw::get_var('results', 'int', 
'GET', $user_rows_per_page);
+                       $sort_field             = phpgw::get_var('sort');
+                       $sort_ascending = phpgw::get_var('dir') == 'desc' ? 
false : true;
+                       // Form variables
+                       $search_for     = phpgw::get_var('query');
+                       $search_type    = phpgw::get_var('search_option');
+                       // Create an empty result set
+                       $result_objects = array();
+                       $result_count = 0;
+                       
+                       $exp_param      = phpgw::get_var('export');
+                       $export = false;
+                       if(isset($exp_param)){
+                               $export=true;
+                               $num_of_objects = null;
+                       }
+                       
+                       $type = phpgw::get_var('type');
+                       switch($type)
+                       {
+                               case 'contracts_for_adjustment':
+                                       $adjustment_id = 
(int)phpgw::get_var('id');
+                                       $adjustment = 
rental_soadjustment::get_instance()->get_single($adjustment_id);
+                                       $filters = array('contract_type' => 
$adjustment->get_responsibility_id(), 'adjustment_interval' => 
$adjustment->get_interval(), 'adjustment_year' => $adjustment->get_year(), 
'adjustment_is_executed' => $adjustment->is_executed());
+                                       break;
+                               case 'contracts_part':                          
                // Contracts for this party
+                                       $filters = array('party_id' => 
phpgw::get_var('party_id'),'contract_status' => 
phpgw::get_var('contract_status'), 'contract_type' => 
phpgw::get_var('contract_type'), 'status_date_hidden' => 
phpgw::get_var('status_date_hidden'));
+                                       break;
+                               case 'contracts_for_executive_officer':         
// Contracts for this executive officer
+                                       $filters = array('executive_officer' => 
$GLOBALS['phpgw_info']['user']['account_id']);
+                                       break;
+                               case 'ending_contracts':
+                               case 'ended_contracts':
+                               case 'last_edited':     
+                               case 'closing_due_date':
+                               case 'terminated_contracts':                    
        
+                                       // Queries that depend on areas of 
responsibility
+                                       $types = 
rental_socontract::get_instance()->get_fields_of_responsibility();
+                                       $ids = array();
+                                       $read_access = array();
+                                       foreach($types as $id => $label)
+                                       {
+                                               $names = 
$this->locations->get_name($id);
+                                               if($names['appname'] == 
$GLOBALS['phpgw_info']['flags']['currentapp'])
+                                               {
+                                                       
if($this->hasPermissionOn($names['location'],PHPGW_ACL_ADD))
+                                                       {
+                                                               $ids[] = $id;
+                                                       }
+                                                       else
+                                                       {
+                                                               $read_access[] 
= $id;
+                                                       }
+                                               }
+                                       }
+                                       
+                                       
+                                       if(count($ids) > 0)
+                                       {
+                                               $comma_seperated_ids = 
implode(',',$ids);
+                                       }
+                                       else
+                                       {
+                                               $comma_seperated_ids = 
implode(',',$read_access);
+                                       }
+                                       
+                                       switch($type)
+                                       {
+                                               case 'ending_contracts':        
                // Contracts that are about to end in areas of responsibility
+                                                       $filters = 
array('contract_status' => 'under_dismissal', 'contract_type' => 
$comma_seperated_ids);
+                                                       break;
+                                               case 'ended_contracts':         
                // Contracts that are ended in areas of responsibility
+                                                       $filters = 
array('contract_status' => 'ended', 'contract_type' => $comma_seperated_ids);
+                                                       break;
+                                               case 'last_edited':             
                // Contracts that are last edited in areas of resposibility
+                                                       $filters = 
array('contract_type' => $comma_seperated_ids);
+                                                       $sort_field = 
'contract.last_updated';
+                                                       $sort_ascending = false;
+                                                       break;
+                                               case 'closing_due_date':        
                //Contracts closing due date in areas of responsibility
+                                                       $filters = 
array('contract_status' => 'closing_due_date', 'contract_type' => 
$comma_seperated_ids);
+                                                       break;
+                                               case 'terminated_contracts':
+                                                       $filters = 
array('contract_status' => 'terminated_contracts', 'contract_type' => 
$comma_seperated_ids);
+                                                       break;
+                                       }
+                                       
+                                       break;
+                               case 'contracts_for_composite': // ... all 
contracts this composite is involved in, filters (status and date)
+                                       $filters = array('composite_id' => 
phpgw::get_var('composite_id'),'contract_status' => 
phpgw::get_var('contract_status'), 'contract_type' => 
phpgw::get_var('contract_type'), 'status_date_hidden' => 
phpgw::get_var('date_status_hidden'));
+                                       break;
+                               case 'get_contract_warnings':   //get the 
contract warnings
+                                       $contract = 
rental_socontract::get_instance()->get_single(phpgw::get_var('contract_id'));
+                                       $contract->check_consistency();
+                                       $rows = 
$contract->get_consistency_warnings();
+                                       $result_count = count($rows);
+                                       $export=true;
+                                       break;
+                               case 'all_contracts':
+                               default:
+                                       phpgwapi_cache::session_set('rental', 
'contract_query', $search_for);
+                                       phpgwapi_cache::session_set('rental', 
'contract_search_type', $search_type);
+                                       phpgwapi_cache::session_set('rental', 
'contract_status', phpgw::get_var('contract_status'));
+                                       phpgwapi_cache::session_set('rental', 
'contract_status_date', phpgw::get_var('date_status'));
+                                       phpgwapi_cache::session_set('rental', 
'contract_type', phpgw::get_var('contract_type'));
+                                       $filters = array('contract_status' => 
phpgw::get_var('contract_status'), 'contract_type' => 
phpgw::get_var('contract_type'), 'status_date_hidden' => 
phpgw::get_var('date_status_hidden'));
+                       }
+                       if($type != 'get_contract_warnings'){
+                               $result_objects = 
rental_socontract::get_instance()->get($start_index, $num_of_objects, 
$sort_field, $sort_ascending, $search_for, $search_type, $filters);
+                               $result_count = 
rental_socontract::get_instance()->get_count($search_for, $search_type, 
$filters);
+                               
+                               
+                               //Serialize the contracts found
+                               $rows = array();
+                               foreach ($result_objects as $result) {
+                                       if(isset($result))
+                                       {
+                                               $rows[] = $result->serialize();
+                                       }
+                               }
+                               //var_dump("Usage " .memory_get_usage() . " 
bytes after serializing");
+                       }
+                       
+                       if(!$export){
+                               //Add context menu columns (actions and labels)
+                               array_walk($rows, array($this, 'add_actions'), 
array($type,$ids,$adjustment_id));
+                       }
+                       //var_dump("Usage " .memory_get_usage() . " bytes after 
menu");
+                       
+                       
+                       //Build a YUI result from the data
+                       $result_data = array('results' => $rows, 
'total_records' => $result_count);
+                       return $this->yui_results($result_data, 
'total_records', 'results');
+               }
+
+               /**
+                * Add data for context menu
+                *
+                * @param $value pointer to
+                * @param $key ?
+                * @param $params [type of query, editable]
+                */
+               public function add_actions(&$value, $key, $params)
+               {
+                       $value['ajax'] = array();
+                       $value['actions'] = array();
+                       $value['labels'] = array();
+
+                       $type = $params[0];
+                       $ids = $params[1];
+                       $adjustment_id = $params[2];
+                       
+                       switch($type)
+                       {
+                               case 'last_edited_by':
+                               case 'contracts_for_executive_officer':
+                               case 'ending_contracts':
+                               case 'ended_contracts':
+                               case 'closing_due_date':
+                               case 'terminated_contracts':
+                                       if(count($ids) > 0)
+                                       {
+                                               $value['ajax'][] = false;
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.edit', 
'id' => $value['id'], 'initial_load' => 'no')));
+                                               $value['labels'][] = 
lang('edit_contract');
+                                       }
+                                       else
+                                       {
+                                               $value['ajax'][] = false;
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view', 
'id' => $value['id'], 'initial_load' => 'no')));
+                                               $value['labels'][] = 
lang('show');
+                                       }
+                                       break;
+                               case 'contracts_for_adjustment':
+                                       if(!isset($ids) || count($ids) > 0)
+                                       {
+                                               $value['ajax'][] = false;
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.edit',
+                                                                               
                                                                                
        'id' => $value['id'], 
+                                                                               
                                                                                
        'initial_load' => 'no',
+                                                                               
                                                                                
        'adjustment_id' => $adjustment_id)));
+                                               $value['labels'][] = 
lang('edit');
+                                               $value['ajax'][] = false;
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 
'rental.uicontract.copy_contract',
+                                                                               
                                                                                
                                        'id' => $value['id'],
+                                                                               
                                                                                
                                        'adjustment_id' => $adjustment_id)));
+                                               $value['labels'][] = 
lang('copy');
+                                       }
+                                       $value['ajax'][] = false;
+                                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view',
+                                                                               
                                                                                
                                        'id' => $value['id'], 
+                                                                               
                                                                                
                                        'initial_load' => 'no',
+                                                                               
                                                                                
                                        'adjustment_id' => $adjustment_id)));
+                                       $value['labels'][] = lang('show');
+                                               
+
+                                               
+                                       break;
+                               default:
+                                       if(!isset($ids) || count($ids) > 0)
+                                       {
+                                               $value['ajax'][] = false;
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.edit', 
'id' => $value['id'], 'initial_load' => 'no')));
+                                               $value['labels'][] = 
lang('edit');
+                                               $value['ajax'][] = false;
+                                               $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 
'rental.uicontract.copy_contract', 'id' => $value['id'])));
+                                               $value['labels'][] = 
lang('copy');
+                                       }
+                                       $value['ajax'][] = false;
+                                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view', 
'id' => $value['id'], 'initial_load' => 'no')));
+                                       $value['labels'][] = lang('show');
+                                       $value['ajax'][] = false;
+                                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental.uicontract.view', 
'id' => $value['id'], 'initial_load' => 'no')));
+                                       $value['labels'][] = lang('make_pdf');
+                               }
+               }
+
+               /**
+                * View a list of all contracts
+                */
+               public function index()
+               {
+                       $search_for = phpgw::get_var('search_for');
+                       if($search_for)
+                       {
+                               phpgwapi_cache::session_set('rental', 
'contract_query', $search_for);
+                               phpgwapi_cache::session_set('rental', 
'contract_search_type', phpgw::get_var('search_type'));
+                               phpgwapi_cache::session_set('rental', 
'contract_status', phpgw::get_var('contract_status'));
+                               phpgwapi_cache::session_set('rental', 
'contract_status_date', phpgw::get_var('date_status'));
+                               phpgwapi_cache::session_set('rental', 
'contract_type', phpgw::get_var('contract_type'));
+                       }
+                       $this->render('contract_list.php');
+               }
+
+               /**
+                * Common function for viewing or editing a contract
+                *
+                * @param $editable whether or not the contract should be 
editable in the view
+                * @param $contract_id the id of the contract to show
+                */
+               public function viewedit($editable, $contract_id, $contract = 
null, $location_id = null, $notification = null, string $message = null, string 
$error = null)
+               {
+                       
+                       $cancel_link = self::link(array('menuaction' => 
'rental.uicontract.index', 'populate_form' => 'yes'));
+                       $adjustment_id = (int)phpgw::get_var('adjustment_id');
+                       if($adjustment_id){
+                               $cancel_link = self::link(array('menuaction' => 
'rental.uiadjustment.show_affected_contracts','id' => $adjustment_id));
+                               $cancel_text = 'contract_regulation_back';
+                       }
+                       
+                       
+                       if (isset($contract_id) && $contract_id > 0) {
+                               if($contract == null){
+                                       $contract = 
rental_socontract::get_instance()->get_single($contract_id);
+                               }
+                               if ($contract) {
+                                       
+                                       if($editable && 
!$contract->has_permission(PHPGW_ACL_EDIT))
+                                       {
+                                               $editable = false;
+                                               $error .= 
'<br/>'.lang('permission_denied_edit_contract');
+                                       }
+                                       
+                                       if(!$editable && 
!$contract->has_permission(PHPGW_ACL_READ))
+                                       {
+                                               
$this->render('permission_denied.php',array('error' => 
lang('permission_denied_view_contract')));
+                                               return;
+                                       }
+                                       
+                                       $parties = 
rental_soparty::get_instance()->get(null, null, null, null, null, null, 
array('contract_id' => $contract->get_id()));
+                                       $party = reset($parties); //
+                                       
+                                       $contract_dates = 
$contract->get_contract_date();
+                                       
+                                       $composites = 
rental_socomposite::get_instance()->get(null, null, null, null, null, null, 
array('contract_id' => $contract->get_id()));
+                                       $composite = reset($composites);
+                                       
+                                       
+                                       $data = array
+                                       (
+                                               'contract'      => $contract,
+                                               'contract_party' => $party,
+                                               'contract_dates' => 
$contract_dates,
+                                               'composite' => $composite,
+                                               'notification' => $notification,
+                                               'editable' => $editable,
+                                               'message' => isset($message) ? 
$message : phpgw::get_var('message'),
+                                               'error' => isset($error) ? 
$error : phpgw::get_var('error'),
+                                               'cancel_link' => $cancel_link,
+                                               'cancel_text' => $cancel_text
+                                               
+                                       );
+                                       $contract->check_consistency();
+                               //      include PHPGW_SERVER_ROOT . 
"/rental/inc/plugins/fellesdata/party.edit.php";
+                                       
+                                       
$this->render('pdf/rental_contract_form_hybler.php', $data);
+                               }
+                       }
+                       else
+                       {
+                               if($this->isAdministrator() || 
$this->isExecutiveOfficer()){
+                                       if(!isset($contract)){
+                                               $contract = new 
rental_contract();
+                                               $fields = 
rental_socontract::get_instance()->get_fields_of_responsibility();
+                                               
$contract->set_location_id($location_id);
+                                               
$contract->set_contract_type_title($fields[$location_id]);
+                                       }
+                                       if ($contract) {
+                                               $data = array
+                                               (
+                                                       'contract'      => 
$contract,
+                                                       'notification' => 
$notification,
+                                                       'editable' => true,
+                                                       'message' => 
isset($message) ? $message : phpgw::get_var('message'),
+                                                       'error' => 
isset($error) ? $error : phpgw::get_var('error'),
+                                                       'cancel_link' => 
$cancel_link,
+                                                       'cancel_text' => 
$cancel_text
+                                               );
+                                               $this->render('contract.php', 
$data);
+                                       }
+                               }
+                               else
+                               {
+                                       
$this->render('permission_denied.php',array('error' => 
lang('permission_denied_new_contract')));
+                                       return; 
+                               }
+                       }
+               }
+
+               /**
+                * View a contract
+                */
+               public function view()
+               {
+                       $GLOBALS['phpgw_info']['flags']['app_header'] .= 
'::'.lang('view');
+                       $contract_id = (int)phpgw::get_var('id');
+                       return $this->viewedit(false, $contract_id);
+               }
+
+               /**
+                * Edit a contract
+                */
+               public function edit()
+               {
+                       $GLOBALS['phpgw_info']['flags']['app_header'] .= 
'::'.lang('edit');
+                       $contract_id = (int)phpgw::get_var('id');
+                       $location_id = (int)phpgw::get_var('location_id');
+                       $update_price_items = false;
+                       
+                       $message = null;
+                       $error = null;
+                       $add_default_price_items = false;
+
+                       if(isset($_POST['save_contract']))
+                       {
+                               if(isset($contract_id) && $contract_id > 0)
+                               {
+                                       $contract = 
rental_socontract::get_instance()->get_single($contract_id);
+                                       
if(!$contract->has_permission(PHPGW_ACL_EDIT))
+                                       {
+                                               unset($contract);
+                                               
$this->render('permission_denied.php',array('error' => 
lang('permission_denied_edit_contract')));
+                                       }
+                               }
+                               else
+                               {
+                                       if(isset($location_id) && 
($this->isExecutiveOfficer() || $this->isAdministrator())){
+                                               $contract = new 
rental_contract();
+                                               $fields = 
rental_socontract::get_instance()->get_fields_of_responsibility();
+                                               
$contract->set_location_id($location_id);
+                                               
$contract->set_contract_type_title($fields[$location_id]);
+                                               $add_default_price_items = true;
+                                       }
+                               }
+                               
+                               $date_start =  
strtotime(phpgw::get_var('date_start_hidden'));
+                               $date_end =  
strtotime(phpgw::get_var('date_end_hidden'));
+                               
+                               if(isset($contract)){
+                                       $contract->set_contract_date(new 
rental_contract_date($date_start, $date_end));
+                                       
$contract->set_security_type(phpgw::get_var('security_type'));
+                                       
$contract->set_security_amount(phpgw::get_var('security_amount'));
+                                       
$contract->set_executive_officer_id(phpgw::get_var('executive_officer'));
+                                       
$contract->set_comment(phpgw::get_var('comment'));
+                                       
+                                       if(isset($location_id) && $location_id 
> 0)
+                                       {
+                                               
$contract->set_location_id($location_id); // only present when new contract
+                                       }
+                                       
$contract->set_term_id(phpgw::get_var('billing_term'));
+                                       
$contract->set_billing_start_date(strtotime(phpgw::get_var('billing_start_date_hidden')));
+                                       
$contract->set_service_id(phpgw::get_var('service_id'));
+                                       
$contract->set_responsibility_id(phpgw::get_var('responsibility_id'));
+                                       
$contract->set_reference(phpgw::get_var('reference'));
+                                       
$contract->set_invoice_header(phpgw::get_var('invoice_header'));
+                                       
$contract->set_account_in(phpgw::get_var('account_in'));
+                                       
+                                       /*
+                                       if($contract->get_contract_type_id() != 
phpgw::get_var('contract_type'))
+                                       {
+                                               // New contract type id set, 
retrieve correct account out
+                                               $type_id = 
phpgw::get_var('contract_type');
+                                               if(isset($type_id) && $type_is 
!= ''){
+                                                       $account = 
rental_socontract::get_instance()->get_contract_type_account($type_id);
+                                                       
$contract->set_account_out($account);
+                                               }
+                                               else
+                                               {
+                                                       
$contract->set_account_out(phpgw::get_var('account_out'));
+                                               }
+                                       }
+                                       else
+                                       {*/
+                                               
$contract->set_account_out(phpgw::get_var('account_out'));
+                                       //}
+                                       
+                                       
$contract->set_project_id(phpgw::get_var('project_id'));
+                                       
$contract->set_due_date(strtotime(phpgw::get_var('due_date_hidden')));
+                                       
$contract->set_contract_type_id(phpgw::get_var('contract_type'));
+                                       $old_rented_area = 
$contract->get_rented_area();
+                                       $new_rented_area = 
phpgw::get_var('rented_area');
+                                       $new_rented_area = 
str_replace(',','.',$new_rented_area);
+                                       $validated_numeric=false;
+                                       if(!isset($new_rented_area) || 
$new_rented_area == ''){
+                                               $new_rented_area = 0;
+                                       }
+                                       if($old_rented_area != 
$new_rented_area){
+                                               $update_price_items = true;
+                                       }
+                                       
$contract->set_rented_area($new_rented_area);
+                                       
$contract->set_adjustment_interval(phpgw::get_var('adjustment_interval'));
+                                       
$contract->set_adjustment_share(phpgw::get_var('adjustment_share'));
+                                       
$contract->set_adjustable(phpgw::get_var('adjustable') == 'on' ? true : false);
+                                       
$contract->set_publish_comment(phpgw::get_var('publish_comment') == 'on' ? true 
: false);
+                                       $validated_numeric = 
$contract->validate_numeric();
+                                       
+                                       if($validated_numeric){
+                                               $so_contract = 
rental_socontract::get_instance();
+                                               $db_contract = 
$so_contract->get_db();
+                                               
$db_contract->transaction_begin();
+                                               
if($so_contract->store($contract))
+                                               {
+                                                       if($update_price_items){
+                                                               $success = 
$so_contract->update_price_items($contract->get_id(), $new_rented_area);
+                                                               if($success){
+                                                                       
$db_contract->transaction_commit();
+                                                                       
$message = lang('messages_saved_form');
+                                                                       
$contract_id = $contract->get_id();
+                                                               }
+                                                               else{
+                                                                       
$db_contract->transaction_abort();
+                                                                       $error 
= lang('messages_form_error');
+                                                               }
+                                                       }
+                                                       else 
if($add_default_price_items)
+                                                       {
+                                                               $so_price_item 
= rental_soprice_item::get_instance();
+                                                               //get default 
price items for location_id
+                                                               
$default_price_items = 
$so_contract->get_default_price_items($contract->get_location_id());
+                                                               
+                                                               //add 
price_items to contract
+                                                               
foreach($default_price_items as $price_item_id)
+                                                               {
+                                                                       
$so_price_item->add_price_item($contract->get_id(), $price_item_id);
+                                                               }
+                                                               
$db_contract->transaction_commit();
+                                                               $message = 
lang('messages_saved_form');
+                                                               $contract_id = 
$contract->get_id();
+                                                       }
+                                                       else{
+                                                               
$db_contract->transaction_commit();
+                                                               $message = 
lang('messages_saved_form');
+                                                               $contract_id = 
$contract->get_id();
+                                                       }
+                                               }
+                                               else
+                                               {
+                                                       
$db_contract->transaction_abort();
+                                                       $error = 
lang('messages_form_error');
+                                               }
+                                       }
+                                       else{
+                                               $error = 
$contract->get_validation_errors();
+                                               return $this->viewedit(true, 
$contract_id, $contract, $location_id,$notification, $message, $error);
+                                       }
+                               }
+                               $GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'rental.uicontract.edit', 'id' => $contract->get_id(), 
'message' => $message, 'error' => $error));
+                       }
+                       else if(isset($_POST['add_notification']))
+                       {
+                               $contract = 
rental_socontract::get_instance()->get_single($contract_id);
+                               if($contract->has_permission(PHPGW_ACL_EDIT))
+                               {
+                                       $account_id = 
phpgw::get_var('notification_target');
+                                       $location_id = 
phpgw::get_var('notification_location');
+                                       $date = 
phpgw::get_var('date_notification_hidden');
+                                       if($date)
+                                       {
+                                               $date = strtotime($date);
+                                       }
+                                       $notification = new 
rental_notification(-1, $account_id, $location_id, $contract_id, $date, 
phpgw::get_var('notification_message'), 
phpgw::get_var('notification_recurrence'));
+                                       if 
(rental_sonotification::get_instance()->store($notification))
+                                       {
+                                               $message = 
lang('messages_saved_form');
+                                               $notification = null; // We 
don't want to display the date/message when it was sucessfully stored.
+                                       }
+                                       else
+                                       {
+       
+                                               $error = 
lang('messages_form_error');
+                                       }
+                               }
+                               else
+                               {
+                                       $error = 
lang('permission_denied_edit_contract');
+                               }
+                       }
+                       return $this->viewedit(true, $contract_id, null, 
$location_id,$notification, $message, $error);
+               }
+
+               /**
+                * Create a new empty contract
+                */
+               public function add()
+               {
+                       $location_id = phpgw::get_var('location_id');
+                       if(isset($location_id) && $location_id > 0)
+                       {
+                               $GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'rental.uicontract.edit', 'location_id' => $location_id));
+                       }
+               }
+
+               /**
+                * Create a new contract tied to the composite provided in the 
composite_id parameter
+                */
+               public function add_from_composite()
+               {
+                       $contract = new rental_contract();
+                       
$contract->set_location_id(phpgw::get_var('responsibility_id'));
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               $so_contract = 
rental_socontract::get_instance();
+                               $db_contract = $so_contract->get_db();
+                               $db_contract->transaction_begin();
+                               if($so_contract->store($contract))
+                               {
+                                       // Add that composite to the new 
contract
+                                       $success = 
$so_contract->add_composite($contract->get_id(), phpgw::get_var('id'));
+                                       if($success){
+                                               
$db_contract->transaction_commit();
+                                               $comp_name = 
rental_socomposite::get_instance()->get_single(phpgw::get_var('id'))->get_name();
+                                               $message = 
lang('messages_new_contract_from_composite').' '.$comp_name;
+                                       
+                                               
$GLOBALS['phpgw']->redirect_link('/index.php', array('menuaction' => 
'rental.uicontract.edit', 'id' => $contract->get_id(), 'message' => $message));
+                                       }
+                                       else{
+                                               
$db_contract->transaction_abort();
+                                               
$GLOBALS['phpgw']->redirect_link('/index.php', array('menuaction' => 
'rental.uicontract.edit', 'id' => $contract->get_id(), 'message' => 
lang('messages_form_error')));
+                                       }
+                               }
+                               else
+                               {
+                                       $db_contract->transaction_abort();
+                                       
$GLOBALS['phpgw']->redirect_link('/index.php', array('menuaction' => 
'rental.uicontract.edit', 'id' => $contract->get_id(), 'message' => 
lang('messages_form_error')));
+                               }
+                       }
+               
+                       // If no executive officer 
+                       $this->render('permission_denied.php',array('error' => 
lang('permission_denied_new_contract')));
+               }
+               
+               /**
+                * Create a new contract based on an existing contract
+                */
+               public function copy_contract()
+               {
+                       $adjustment_id = (int)phpgw::get_var('adjustment_id');
+                       
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = 
$so_contract->get_single(phpgw::get_var('id'));
+                       $old_contract_old_id = $contract->get_old_contract_id();
+                       $db_contract = $so_contract->get_db();
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               $db_contract->transaction_begin();
+                               //reset id's and contract dates
+                               $contract->set_id(null);
+                               $contract->set_old_contract_id(null);
+                               $contract->set_contract_date(null);
+                               $contract->set_due_date(null);
+                               $contract->set_billing_start_date(null);
+                               if($so_contract->store($contract))
+                               {
+                                       // copy the contract
+                                       $success = 
$so_contract->copy_contract($contract->get_id(), phpgw::get_var('id'));
+                                       if($success){
+                                               
$db_contract->transaction_commit();
+                                               $message = 
lang(messages_new_contract_copied).' '.$old_contract_old_id;
+                                               
$GLOBALS['phpgw']->redirect_link('/index.php', array('menuaction' => 
'rental.uicontract.edit', 'id' => $contract->get_id(), 'message' => $message, 
'adjustment_id' => $adjustment_id));
+                                       }
+                                       else{
+                                               
$db_contract->transaction_abort();
+                                               
$GLOBALS['phpgw']->redirect_link('/index.php', array('menuaction' => 
'rental.uicontract.edit', 'id' => $contract->get_id(), 'message' => 
lang('messages_form_error'),'adjustment_id' => $adjustment_id));
+                                       }
+                               }
+                               else
+                               {
+                                       $db_contract->transaction_abort();
+                                       
$GLOBALS['phpgw']->redirect_link('/index.php', array('menuaction' => 
'rental.uicontract.edit', 'id' => $contract->get_id(), 'message' => 
lang('messages_form_error'),'adjustment_id' => $adjustment_id));
+                               }
+                       }
+               
+                       // If no executive officer 
+                       $this->render('permission_denied.php',array('error' => 
lang('permission_denied_new_contract')));
+               }
+
+               /**
+                * Public function. Add a party to a contract
+                * @param HTTP::contract_id     the contract id
+                * @param HTTP::party_id the party id
+                * @return true if successful, false otherwise
+                */
+               public function add_party(){
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $party_id = (int)phpgw::get_var('party_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
$so_contract->add_party($contract_id,$party_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Remove a party from a contract
+                * @param HTTP::contract_id the contract id
+                * @param HTTP::party_id the party id
+                * @return true if successful, false otherwise
+                */
+               public function remove_party(){
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $party_id = (int)phpgw::get_var('party_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return $so_contract->remove_party($contract_id, 
$party_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Set the payer on a contract
+                * @param       HTTP::contract_id       the contract id
+                * @param       HTTP::party_id  the party id
+                * @return true if successful, false otherwise
+                */
+               public function set_payer(){
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $party_id = (int)phpgw::get_var('party_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
$so_contract->set_payer($contract_id,$party_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Add a composite to a contract.
+                * @param       HTTP::contract_id       the contract id
+                * @param       HTTP::composite_id      the composite id
+                * @return boolean true if successful, false otherwise
+                */
+               public function add_composite(){
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $composite_id = (int)phpgw::get_var('composite_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
$so_contract->add_composite($contract_id, $composite_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Remove a composite from a contract.
+                * @param       HTTP::contract_id       the contract id
+                * @param       HTTP::composite_id      the composite id
+                * @return boolean true if successful, false otherwise
+                */
+               public function remove_composite(){
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $composite_id = (int)phpgw::get_var('composite_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if(isset($contract) && 
$contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
$so_contract->remove_composite($contract_id, $composite_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Add a price item to a contract
+                * @param       HTTP::contract_id       the contract id
+                * @param       HTTP::price_item_id     the price item id
+                * @return boolean true if successful, false otherwise
+                */
+               public function add_price_item()
+               {
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $price_item_id = (int)phpgw::get_var('price_item_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
rental_soprice_item::get_instance()->add_price_item($contract_id, 
$price_item_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Remove a price item from a contract
+                * @param       HTTP::contract_id       the contract id
+                * @param       HTTP::price_item_id     the price item id
+                * @return boolean true if successful, false otherwise
+                */
+               public function remove_price_item()
+               {
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $price_item_id = (int)phpgw::get_var('price_item_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
rental_soprice_item::get_instance()->remove_price_item($contract_id, 
$price_item_id);
+                       }
+                       return false;
+               }
+
+               /**
+                * Public function. Reset a price item on a contract
+                * @param       HTTP::contract_id       the contract id
+                * @param       HTTP::price_item_id     the price item id
+                * @return boolean true if successful, false otherwise
+                */
+               public function reset_price_item()
+               {
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $price_item_id = (int)phpgw::get_var('price_item_id');
+                       $so_contract = rental_socontract::get_instance();
+                       $contract = $so_contract->get_single($contract_id);
+                       if($contract->has_permission(PHPGW_ACL_EDIT))
+                       {
+                               return 
rental_soprice_item::get_instance()->reset_contract_price_item($price_item_id);
+                       }
+                       return false;
+               }
+               
+               public function get_total_price(){
+                       $so_contract = rental_socontract::get_instance();
+                       $so_contract_price_item = 
rental_socontract_price_item::get_instance();
+                       
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $total_price =  
$so_contract_price_item->get_total_price($contract_id);
+                       $contract = $so_contract->get_single($contract_id);
+                       $area = $contract->get_rented_area();
+                       
+                       if(isset($area) && $area > 0)
+                       {
+                               $price_per_unit = $total_price / $area;
+                       }
+                       
+                       $result_array = array('total_price' => $total_price, 
'area' => $area, 'price_per_unit' => $price_per_unit);
+                       $result_data = array('results' => $result_array, 
'total_records' => 1);
+                       return $this->yui_results($result_data, 
'total_records', 'results');
+               }
+               
+               public function get_max_area(){
+                       $contract_id = (int)phpgw::get_var('contract_id');
+                       $total_price =  
rental_socontract_price_item::get_instance()->get_max_area($contract_id);
+                       $result_array = array('max_area' => $max_area);
+                       $result_data = array('results' => $result_array, 
'total_records' => 1);
+                       return $this->yui_results($result_data, 
'total_records', 'results');
+               }
+       }
+?>

Modified: trunk/rental/setup/phpgw_no.lang
===================================================================
--- trunk/rental/setup/phpgw_no.lang    2011-02-21 07:59:06 UTC (rev 7026)
+++ trunk/rental/setup/phpgw_no.lang    2011-02-21 11:45:09 UTC (rev 7027)
@@ -279,6 +279,7 @@
 location_code  rental  no      Enhetsnummer
 location_id    rental  no      Intern organisasjonstilknytning
 log_in_to_add_notfications     rental  no      Det er bare mulig å legge til 
varlser i redigeringsmodus.
+make_pdf       rental  no      Lag PDF for utskrift
 manual_adjust_price_item       rental  no      Manuell regulering av 
priselement
 manual_adjust_price_item_select        rental  no      Velg priselement
 manual_adjustment      rental  no      Manuell regulering

Added: trunk/rental/templates/base/pdf/css/contract.css
===================================================================
--- trunk/rental/templates/base/pdf/css/contract.css                            
(rev 0)
+++ trunk/rental/templates/base/pdf/css/contract.css    2011-02-21 11:45:09 UTC 
(rev 7027)
@@ -0,0 +1,143 @@
+body {
+       
+}
+
+h1 {
+       text-align: center;
+}
+
+h2 {
+       text-align: center;x
+       font-size: 25px;
+}
+
+p {
+       font-family: "Arial";
+       font-size: 12px;
+}
+
+p.sign {
+       font-family: "Arial";
+       font-size: 12px;
+       border-top: solid 1px;
+       text-align: center;
+       width: 250px;
+       margin-top: 40px;
+}
+
+dl {
+       font-family: "Arial";
+       font-size: 12px;
+       width: 100%;
+}
+
+dl.left_column {
+       position: relative;
+       float: left;
+       border: none;
+       width: 40%;
+}
+
+dl.right_column {
+       position: relative;
+       float: right;
+       border: none;
+       width: 50%;
+}
+
+dt {
+       float: left;
+       clear: left;
+       text-align: left;
+       font-weight: bold;
+}
+
+dt.section_header {
+       float: left;
+       clear: left;
+       text-align: left;
+       font-weight: bold;
+}
+
+dd {
+       margin: 0 0 0 120px;
+       padding: 0 0 0.5em 0;
+}
+
+.checkbox_list dd {
+       margin: 0 0 0 50px;
+       padding: 0 0 0.5em 0;
+}
+
+.section_header dd {
+       margin: 0 0 0 50px;
+       padding: 0 0 0 0;
+       font-weight: bold;
+}
+
+div {
+       padding-left: 10px;
+}
+
+div.two_column {
+       float: left;
+       border: 2px solid;
+       width: 98%;
+       margin-bottom: 20px;
+}
+
+div.one_column {
+       float: left;
+       border: 2px solid;
+       width: 98%;
+       margin-bottom: 20px;
+}
+
+div.left {
+       float: left;
+       width: 40%;
+}
+
+div.right {
+       float: left;
+       width: 40%;
+}
+
+span.checkbox_bg{
+       background-color: #ddffcc;
+       
+}
+
+table {
+       width: 100%;
+       font-size: 12px;
+       font-family: arial;
+}
+
+table.header {
+       width: 100%;
+       font-size: 12px;
+       font-family: arial;
+       border: 2px solid;
+}
+
+th {
+       background-color: #C0C0C0;
+       padding: 4px 4px 4px 4px;
+}
+
+td {
+       padding: 4px 4px 4px 4px;
+}
+
+textarea {
+       width: 98%;
+       background-color: #ddffcc;
+       margin-bottom: 10px;
+}
+
+input[type=text] {
+       width: 300px;
+       background-color: #ddffcc;
+}
+


Property changes on: trunk/rental/templates/base/pdf/css/contract.css
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: trunk/rental/templates/base/pdf/rental_contract_form_hybler.php
===================================================================
--- trunk/rental/templates/base/pdf/rental_contract_form_hybler.php             
                (rev 0)
+++ trunk/rental/templates/base/pdf/rental_contract_form_hybler.php     
2011-02-21 11:45:09 UTC (rev 7027)
@@ -0,0 +1,124 @@
+<?php 
+$date_format = 
$GLOBALS['phpgw_info']['user']['preferences']['common']['dateformat'];
+?>
+<style>
+<?php include "css/contract.css"?>
+</style>
+
+
+<img 
src="http://www.nordlandssykehuset.no/getfile.php/NLSH_bilde%20og%20filarkiv/Internett/NLSH_logo_siste.jpg%20%28352x58%29.jpg";
 alt="Nordlanssykehuset logo" />
+<h1>Melding om inn/utflytting - Hybler</h1>
+
+<form action="" method="post">
+<div class="two_column">
+
+<dl class="left_column">
+       <dt><span class="checkbox_bg"><input type="checkbox" /></span>&nbsp 
Innflytting</dt>
+       <dd>&nbsp</dd>
+       <dt>Navn:</dt>
+       <dd><?php echo $contract->get_party_name_as_list();?></dd>
+       <dt>Fnr.:</dt>
+       <dd><?php echo $contract_party->get_identifier();?></dd>
+       <dt>Adresse:</dt>
+       <dd><?php echo $contract_party->get_address_1().", 
".$contract_party->get_address_2().", ".$contract_party->get_postal_code(). " 
".$contract_party->get_place()  ;?></dd>
+       <dt>Tildelt bolig:</dt>
+       <dd><?php echo $composite->get_name();?></dd>
+</dl>
+
+
+<dl class="right_column">
+       <dt><span class="checkbox_bg"><input type="checkbox" /></span>&nbsp 
Utflytting</dt>
+       <dd>&nbsp</dd>
+       <dt>Stilling:</dt>
+       <dd><?php echo $contract_party->get_title();?></dd>
+       <dt>Avd.:</dt>
+       <dd><?php echo $contract_party->get_department();?></dd>
+       <dt>Innflytting-dato:</dt>
+       <dd><?php echo date($date_format, 
$contract_dates->get_start_date());?></dd>
+       <dt>Utflytting-dato:</dt>
+       <dd><?php echo date($date_format, 
$contract_dates->get_end_date());?></dd>
+</dl>
+</div>
+
+
+<div class="one_column">
+<dl class="checkbox_list">
+       <dt><span class="checkbox_bg"><input type="checkbox"  /></span></dt>
+       <dd>Lever nøkler etter utflytting til vaktmesters postkasse i 
postkasserommet</dd>
+       <dt><span class="checkbox_bg"><input type="checkbox"  /></span></dt>
+       <dd>Underrett vaktmester vedr. eventuelle mangler/skader</dd>
+       <dt><span class="checkbox_bg"><input type="checkbox"  /></span></dt>
+       <dd>Har du tjenestetelefon – meld fra til personalkontoret (ikke 
Telenor)</dd>
+</dl>
+</div>
+
+<div class="one_column">
+
+<table>
+       <tr>
+               <td>Husleie uten møbler</td>
+               <td>Kr.:</td>
+               <td>[hentes fra db]</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Husleie med møbler</td>
+               <td>Kr.:</td>
+               <td>[hentes fra db]</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Utstyr</td>
+               <td>Kr.:</td>
+               <td>[hentes fra db]</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Sengetøy/Håndduker</td>
+               <td>Kr.:</td>
+               <td>[hentes fra db]</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Husleie</td>
+               <td>Kr.:</td>
+               <td>[hentes fra db]</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>1 mnd forskudd</td>
+               <td>Kr.:</td>
+               <td>[hentes fra db]</td>
+               <td>Pr.mnd.</td>
+       </tr>
+</table>
+</div>
+
+
+<div class="one_column">
+<p>Merknader: <strong>Boligen (hybelen) skal ved flytting være ryddet og 
rengjort.</strong></p>
+<textarea rows="3" cols=""></textarea>
+<br />
+</div>
+
+<div class="one_column">
+<p>Dato:</p>
+<table>
+       <tr>
+               <td align="center">
+               <p class="sign">Underskrift leietaker</p>
+               </td>
+               <td align="center">
+               <p class="sign">Underskrift vaktmester</p>
+               </td>
+       </tr>
+</table>
+</div>
+
+
+<p>Kopi:</p>
+<p><span class="checkbox_bg"><input type="checkbox"  
/></span>Personalkontoret</p>
+<p><span class="checkbox_bg"><input type="checkbox"  
/></span>Lønningskontoret</p>
+
+<input type="submit" value="Lag pdf"> 
+</form>

Added: trunk/rental/templates/base/pdf/rental_contract_form_personalbolig.php
===================================================================
--- trunk/rental/templates/base/pdf/rental_contract_form_personalbolig.php      
                        (rev 0)
+++ trunk/rental/templates/base/pdf/rental_contract_form_personalbolig.php      
2011-02-21 11:45:09 UTC (rev 7027)
@@ -0,0 +1,346 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Leiekontrakt for pesonalbolig</title>
+<link rel="stylesheet" type="text/css" href="css/contract.css" />
+</head>
+<body>
+<img 
src="http://www.nordlandssykehuset.no/getfile.php/NLSH_bilde%20og%20filarkiv/Internett/NLSH_logo_siste.jpg%20%28352x58%29.jpg";
 alt="Nordlanssykehuset logo" />
+<h1>LEIEKONTRAKT</h1>
+<h2>FOR PERSONALBOLIG</h2>
+
+
+<form action="" method="post">
+<table class="header">
+       <tr>
+               <th>1. Utleier</th>
+               <th colspan="2" width="50%">2. Leier</th>
+       </tr>
+       <tr>
+               <td>Nordlandssykehuset</td>
+               <td bgcolor="#C0C0C0" width="120px">Navn:</td>
+               <td>[hentes fra db]</td>
+       </tr>
+       <tr>
+               <td>Boligseksjonen</td>
+               <td bgcolor="#C0C0C0">Fødselsnummer:</td>
+               <td>[hentes fra db]</td>
+       </tr>
+       <tr>
+               <td><strong>Kløveråsv. 1 8002 Bodø</strong></td>
+               <td bgcolor="#C0C0C0">Arbeidssted:</td>
+               <td><input type="text" /></td>
+       </tr>
+</table>
+
+
+<dl class="section_header">
+       <dt>3.</dt>
+       <dd>Eiendom</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Gnr.[hentes fra db] Bnr. [hentes fra db] i Bodø kommune.</dd>
+
+</dl>
+
+<dl class="section_header">
+       <dt>4.</dt>
+       <dd>Leieobjekt</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>[hentes fra db] rom + <input type="checkbox" /> kjøkken, <input 
type="checkbox" /> bad</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Annet: <input type="text" /></dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Ytre rom:<input type="text" /></dd>
+</dl>
+<dl class="section_header">
+       <dt>5.</dt>
+       <dd>Begrensning</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Leier har ikke rett til å bruke:<br/>
+       <textarea cols="100" rows="3"></textarea></dd>
+
+</dl>
+
+<dl class="section_header">
+       <dt>6.</dt>
+       <dd>Kontrakten art og varighet</dd>
+</dl>
+
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Leiekontrakten gjelder en <i>PERSONALBOLIG</i>s, bolig som leier 
har leid i egenskap av arbeidstaker, og er knyttet opp mot leiers tilsetting i 
Nordlandssykehuset.<br />
+       <i>OBS: Utleieformen gir leier færre rettigheter enn ved leie av annen 
bolig.</i></dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Leieforholdet er tidsbestemt og starter den [hentes fra db] kl. 
1200<br />
+       og opphører uten oppsigelse den [hentes fra db] kl. 1200<br />
+       <i>Minstetiden er i utgangspunktet tre år for tidsbestemte leieavtaler. 
Dersom kortere tid enn minstetiden er valgt i denne kontrakt, er det likevel 
lovlig fordi utleier har en annen saklig grunn
+       for tidsavgrensningen, jfr punkt 25.</i></dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Leier kan si opp leieavtalen med 2 - to - måneders frist til 
fraflytting ved utløpet av den kalendermåned fristen utløper i. Oppsigelsen 
skal være skriftlig.</dd>
+</dl>
+<div class="one_column">
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Oppsigelse av leiers tilsettingsforhold i Nordlandssykehuset gir 
saklig grunnlag for oppsigelse av leieavtalen, jfr pkt 19.</dd>
+
+</dl>
+</div>
+
+
+<dl class="section_header">
+       <dt>7.</dt>
+       <dd>Leiesum</dd>
+</dl>
+<p>Leien er ved kontraktsinngåelse fastsatt til <br />
+Kr [hentes fra db] pr. måned.</p>
+
+<dl class="section_header">
+       <dt>8.</dt>
+       <dd>Strøm og brensel</dd>
+</dl>
+
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Leier tegner eget strømabonnement</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>A konto i tillegg til leien, for tiden kr pr. mnd.</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>9.</dt>
+       <dd>Andre tillegg</dd>
+</dl>
+
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>kabel-tv, [hentes fra db] pr måned / kroner</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>miljøtillegg, [hentes fra db] pr måned / kroner</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>garasje, [hentes fra db] pr måned / kroner</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>10.</dt>
+       <dd>Leiebetaling</dd>
+</dl>
+<p>Husleien betales forskuddsvis og forfallsdato er sammenfallende med 
lønningsdato. Ved første forfall betales for 2 - to - måneders husleie.</p>
+<div class="one_column">
+<p align="center">Leier/arbeidstaker samtykker i at utleier/arbeidsgiver 
trekker husleie, og <br />
+eventuelt misligholdt husleie, direkte av lønningen, jfr Arbeidsmiljølovens § 
55 nr 3 c.</p>
+</div>
+<p>Manglende dekning, eller for lite trekkgrunnlag, på lønningen er å anse som 
et vesentlig mislighold av leieavtalen, jfr avtalens pkt 21 a).</p>
+<dl class="section_header">
+       <dt>11 a)</dt>
+       <dd>Regulering av leie i takt med endringene i konsumprisindeksen</dd>
+</dl>
+<p>Partene kan, med en måneds skriftlig varsel, kreve leien regulert i takt 
med endringene i konsumprisindeksen i tiden etter siste leiefastsetting. 
Regulering kan tidligst settes i verk et år
+etter at siste leiefastsetting ble satt i verk. Utgangspunktet for 
reguleringen er den konsumprisindeks som forelå ved kontraktsinngåelse.</p>
+<dl class="section_header">
+       <dt>11 b)</dt>
+       <dd>Regulering av leie til gjengs leie</dd>
+</dl>
+<p>Dersom leieforholdet har vart i minst to år og seks måneder uten annen 
leieregulering enn etter konsumprisindeksen, kan begge parter, uten oppsigelse, 
men med seks måneders skriftlig varsel,
+kreve at leien blir satt til gjengs leie ved utleie av liknende bolig på 
liknende avtalevilkår.</p>
+
+<dl class="section_header">
+       <dt>12</dt>
+       <dd>Sikkerhet</dd>
+</dl>
+<p>Innbetalt forskuddsleie for èn måned tilbakeføres til leieren når 
leieforholdet er opphørt, og boligen er besiktet og godtatt av utleier, jfr pkt 
23.</p>
+
+<dl class="section_header">
+       <dt>13</dt>
+       <dd>Utleiers plikter</dd>
+</dl>
+<p>Utleier plikter i leietiden å stille boligen til leiers disposisjon i 
samsvar med denne avtalen. Utleier plikter å stille boligen til rådighet for 
leier til avtalt tid, rengjort, med hele ruter
+og brukelige låser med nøkler til alle utvendige dører. I leietiden plikter 
utleier å holde boligen og eiendommen for øvrig i den stand som følger av 
avtalen og husleielovens bestemmelser.</p>
+<p>Misligholder utleier sine plikter, kan leier gjøre beføyelsene i 
husleielovens kap. 2 gjeldende. Erstatning for indirekte tap som nevnt i § 2-14 
annet ledd kan ikke kreves.</p>
+<p>Melding om at boligen ikke er i den stand som følger av avtalen eller 
husleieloven, må leier gi til utleier innen rimelig tid etter at leier burde 
oppdaget forholdet. I motsatt fall mister
+leier retten til å påberope manglene. Dette gjelder likevel ikke dersom 
utleier har opptrådt grovt uaktsomt eller i strid med redelighet og god tro.</p>
+
+<dl class="section_header">
+       <dt>14</dt>
+       <dd>Utleier og leiers vedlikeholdsplikt</dd>
+</dl>
+<p>Utleier forestår alt vedlikehold. Til dette hører vedlikehold og fornying 
av gulvbelegg, maling og tapet på og innenfor de vegger som omgir boligen. Det 
samme gjelder innvendige dører samt dør
+til og den innvendige del av balkong, terrasse og veranda. Leier skal 
vedlikeholde og om nødvendig skifte ut låser med nøkler, sikringer, ruter, 
kraner, brytere, kontakter, lyspærer og lignende
+forbruksmateriell. Ved innbrudd i boligen har leier plikt til å 
reparere/skifte ut ødelagte dører/vinduer, så langt utgiften er dekket av 
vanlig hjemforsikring (se pkt. 16). Leier dekker mulig
+egenandel.</p>
+<p>Leier skal vedlikeholde alle installasjoner, utstyr og gjenstander som 
boligen er utleid med. Dersom vedlikehold ikke er regnings svarende, påhviler 
utskifting utleier.</p>
+<p>Leier kan ikke uten utleiers samtykke foreta forandringer i husrommet eller 
på eiendommen for øvrig, jfr husleielovens § 5-4 annet ledd.</p>
+
+
+<dl class="section_header">
+       <dt>15</dt>
+       <dd>Leiers øvrige plikter</dd>
+</dl>
+<p>Leier plikter å behandle boligen med tilbørlig aktsomhet, og for øvrig i 
samsvar med denne avtalen. Boligen kan ikke brukes til annet formål enn 
beboelse. Leier plikter å følge vanlige
+ordensregler, og rimelig påbud som utleier har fastsatt til sikring av god 
husorden. Leieobjektet skal holdes oppvarmet når det er fare for frost. Leier 
plikter å erstatte all selvforskyldt skade, og
+all skade som skyldes medlemmer av husstanden, framleiere eller andre leier 
har gitt adgang til boligen, innen de rammer husleieloven § 5-8 setter. Leier 
plikter straks å sende melding til utleier om
+skade på boligen som må utbedres uten opphold.</p>
+<p>Leier plikter foreta renhold av felles trapper og trappeganger.</p>
+
+<p>Andre skader på boligen plikter leier å sende melding om innen rimelig tid. 
Leier plikter for øvrig å gjøre det som med rimelighet kan forventes for å 
avverge økonomisk tap for utleier som
+følge av skade som nevnt over. Er leier selv ikke skyld i skaden, kan 
forsvarlige utgifter ved tiltaket kreves erstattet, sammen med en rimelig 
godtgjørelse for utført arbeid.</p>
+
+<p>Leier plikter å gi utleier eller dennes representant adgang til boligen for 
tilsyn. Videre plikter leier å gi utleier eller andre adgang til boligen i den 
utstrekning det er nødvendig for å
+utføre pliktig vedlikehold, lovlige forandringer eller andre arbeider for å 
forhindre skade på boligen eller eiendommen for øvrig. Utleier disponerer egen 
nøkkel som om nødvendig kan brukes i slike
+tilfeller. Leier skal varsles i rimelig tid før de foretas tilsyn eller 
vedlikeholdsarbeider.</p>
+
+<dl class="section_header">
+       <dt>16</dt>
+       <dd>Forsikring av innbo m.v.</dd>
+</dl>
+<p>Leier plikter til enhver tid å ha innboforsikring. Utleier kan kreve at 
leier framlegger forsikringsbevis med vilkår, og kvittering for betalt 
forsikring. Ved skade på boligen skal leiers
+forsikring benyttes så langt den dekker, inkludert mulig egenandel, før 
utleiers forsikring benyttes.</p>
+<p>Utleier har ikke ansvar for skader eller tap som måtte som måtte oppstå ved 
innbrudd, brann, vannskade mv. utover det som dekkes av de forsikringer utleier 
har som huseier. Dette gjelder
+likevel ikke skader eller tap som skyldes utleiers mislighold.</p>
+
+<dl class="section_header">
+       <dt>17</dt>
+       <dd>Framleie</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Framleie er ikke tillatt, med mindre det er skriftlig avtalt.</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Framleie er tillatt til <input type="text" /></dd>
+       <dt></dt>
+       <dd><i>Vilkår for avtalt framleie / husstandsfellesskap, skal påføres 
kontraktens pkt 25.</i></dd>
+</dl>
+
+<dl class="section_header">
+       <dt>18</dt>
+       <dd>Dyrehold</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Dyrehold er ikke tillatt, med mindre det er skriftlig avtalt.</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Dyrehold er tillatt, ved at leier kan ha 
.......................</dd>
+       <dt></dt>
+       <dd><i>Leier kan holde dyr dersom gode grunner taler for det, og 
dyreholdet ikke er til ulempe for utleier eller andre brukere av eiendommen. 
Utleiers skriftlige samtykke, og eventuelle
+       vilkår for avtalt dyrehold, skal påføres denne kontrakten, jfr pkt 
25.</i></dd>
+</dl>
+
+<dl class="section_header">
+       <dt>19</dt>
+       <dd>Oppsigelse</dd>
+</dl>
+<p>Dersom kontrakten er tidsubestemt, og utleier vil si denne opp, skal 
oppsigelsen være skriftlig og begrunnet. Oppsigelsen skal opplyse om at leier 
kan protestere skriftlig til utleier innen en
+måned etter at oppsigelsen er mottatt. Oppsigelsen skal dessuten opplyse om at 
dersom leier ikke protesterer innen fristen, taper leier sin rett til å 
påberope seg at oppsigelsen er i strid med
+husleieloven, jfr dens § 9-8 første ledd annet punktum, og at utleier i så 
fall kan begjære tvangsfravikelse etter tvangsfullbyrdelsesloven § 13-2 tredje 
ledd bokstav c.</p>
+<p>En leieavtale som er inngått for bestemt tid, opphører uten oppsigelse ved 
utløpet av den avtalte leietid. Det kan avtales at en tidsbestemt leieavtale 
skal kunne sies opp i leietiden, jfr
+husleielovens § 9-2 første og annet ledd.</p>
+
+<dl class="section_header">
+       <dt>20</dt>
+       <dd>Flyttingsoppfordring</dd>
+</dl>
+<p>Dersom kontrakten er inngått for en bestemt tid (tidsbestemt), må utleier 
innen tre måneder <strong>etter</strong> kontraktens utløpsdato sende skriftlig 
oppfordring om at leier må fraflytte
+leieobjektet. I motsatt fall vil kontrakten gå over til å være 
tidsubestemt.</p>
+
+<dl class="section_header">
+       <dt>21</dt>
+       <dd>Leiers avtalebrudd, utkastelsesklausul</dd>
+</dl>
+<p></p>
+
+<dl class="section_header">
+       <dt>22</dt>
+       <dd>Fraflytting</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt>a)</dt>
+       <dd>Leier vedtar at tvangsfravikelse kan kreves hvis leie etter avtalt 
tilleggsytelse ikke er betalt, og leier ikke innen 14 dager etter skriftlig 
varsel etter tvangsfullbyrdelsesloven § 4-18 er
+       sendt, har fraflyttet leiligheten, jfr samme lov § 13-2 tredje ledd a). 
I varselet skal det stå at utkastelse vil bli begjært dersom fraflytting ikke 
skjer, samt at utkastelse kan unngås dersom leien
+       med renter og kostnader blir betalt før utkastelsen gjennomføres.</dd>
+       <dt>b)</dt>
+       <dd>Leier vedtar at tvangsfravikelse kan kreves når leietiden er løpt 
ut, jfr § 13-2 tredje ledd b) i tvangsfullbyrdelsesloven.</dd>
+       <dt>c)</dt>
+       <dd>Ved vesentlig brudd på leieavtalen, kan utleier heve leieavtalen, 
jfr husleieloven § 9-9. Leier plikter da å fraflytte boligen.</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>23</dt>
+       <dd>Leieforholdets opphør</dd>
+</dl>
+<p>Den dagen leieforholdet opphører, skal leier stille boligen med tilbehør 
til utleiers disposisjon. Tilbakelevering anses for skjedd når utleier har fått 
nøkler og ellers uhindret adkomst til
+boligen. Forlater leier boligen på en slik måte at leieforholdet klart må 
ansees oppgitt, kan utleier straks disponere over den.</p>
+<p>Boligen med tilbehør skal være ryddet, rengjort og for øvrig i kontrakts- 
og håndverksmessig godt vedlikeholdt stand. Utleier aksepterer normal slit og 
elde fram til fraflytting.</p>
+<p>Er boligen i dårligere stand enn hva som er avtalt eller fastsatt i pkt. 
14, kan utleier kreve dekket nødvendige utgifter til utbedring. Kravet skal 
være framsatt innen rimelig tid etter at
+utleier burde ha oppdaget mangelen. Denne fristen gjelder ikke hvis leier har 
opptrådt grovt uaktsomt eller i strid med redelighet og god tro.</p>
+<p>Fast inventar, ledninger og lignende som leier har anbrakt eller latt 
anbringe i leieobjektet, tilfaller utleier hvis utskilling ville medføre 
uforholdsmessige omkostninger eller urimelig
+verditap. Ved en eventuell utskilling må leier utbedre de skader som oppstår 
på boligen med tilbehør.</p>
+<p>Stilles ikke boligen til utleiers disposisjon den dagen leieforholdet skal 
opphøre, kan utleier kreve vederlag tilsvarende avtalt leie inntil leiers bruk 
opphører.</p>
+
+<div class="one_column">
+<p align="center">Leier/arbeidstaker samtykker i at utleier/arbeidsgiver 
trekker skyldig beløp som her<br />
+er nevnt direkte av leierens lønn og feriepenger, jfr Arbeidsmiljølovens § 55 
nr 3 c.</p>
+</div>
+<p>Etterlatt løsøre som tilhører leier eller noen i leiers husstand skal tas 
hånd om av utleier for leiers regning. Rent skrot kan kastes umiddelbart. 
Medfører omsorgsplikten arbeid, kan utleier
+kreve en rimelig godtgjørelse for dette. Utleier skal så vidt mulig skriftlig 
oppfordre leier til å hente løsøre. Utleier kan holde løsøret tilbake inntil 
kostnadene med oppbevaringen dekkes eller
+betryggende sikkerhet stilles. Utleier kan selge løsøre for leiers regning 
dersom kostnadene eller ulempene med oppbevaringen blir urimelige, eller dersom 
leier venter urimelig lenge med å betale
+kostnadene eller med å overta løsøre. Er det grunn til å tro at salgssummen 
ikke vil dekke salgskostnadene, kan utleier i stedet rå over tingen på annen 
hensiktsmessig måte.</p>
+<dl class="section_header">
+       <dt>24</dt>
+       <dd>Tinglysing</dd>
+</dl>
+<p>Kontrakten kan ikke tinglyses uten utleiers samtykke.</p>
+
+<dl class="section_header">
+       <dt>25</dt>
+       <dd>Særlige bestemmelser</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" /></dt>
+       <dd>Boligen er øremerket til andre tilsatte.</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Boligen er allerede utleid til tilsatte som skal flytte inn dag. 
måned år</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Boligen skal selges.</dd>
+       <dt><input type="checkbox" /></dt>
+       <dd>Ettersom Nordlandssykehuset står foran salg av personalboliger må 
det presiseres at sykehuset ikke står ansvarlig for å skaffe deg ny bolig 
dersom salg skulle skje innen botidens utløp [hentes fra db].</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>26</dt>
+       <dd>Boligens stand</dd>
+</dl>
+<p>Leier er oppfordret til på forhånd å undersøke boligen. Boligen leies ut i 
den stand den er ved overtakelsen.</p>
+
+
+<table>
+       <tr>
+               <td colspan="2" align="center"><i>Bodø den [dato]</i></td>
+       </tr>
+       <tr>
+               <th>Utleier</th>
+               <th>Leier</th>
+       </tr>
+       <tr>
+       <td align="center">Nordlandssykehuset v/boligseksjonen</td><td></td>
+       </tr>
+       <tr>
+               <td align="center">
+               <p class="sign">Ragnar Mjelle<br />
+               Boligforvalter</p>
+               </td>
+               <td align="center">
+               <p class="sign">[Navn på leietaker hentes fra db]<br />
+               &nbsp</p>
+               </td>
+       </tr>
+</table>
+<input type="submit" value="Lag pdf"></form>
+
+</body>
+</html>
\ No newline at end of file

Added: trunk/rental/templates/base/pdf/rental_contract_hybler.php
===================================================================
--- trunk/rental/templates/base/pdf/rental_contract_hybler.php                  
        (rev 0)
+++ trunk/rental/templates/base/pdf/rental_contract_hybler.php  2011-02-21 
11:45:09 UTC (rev 7027)
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Melding om inn/utflytting - Hybler</title>
+<link rel="stylesheet" type="text/css" href="css/contract.css" />
+</head>
+<body>
+<img 
src="http://www.nordlandssykehuset.no/getfile.php/NLSH_bilde%20og%20filarkiv/Internett/NLSH_logo_siste.jpg%20%28352x58%29.jpg";
 alt="Nordlanssykehuset logo" />
+<h1>Melding om inn/utflytting - Hybler</h1>
+
+
+<div class="two_column">
+
+<dl class="left_column">
+       <dt><input type="checkbox" disabled="disabled" />&nbsp Innflytting</dt>
+       <dd>&nbsp</dd>
+       <dt>Navn:</dt>
+       <dd>....</dd>
+       <dt>Fnr.:</dt>
+       <dd>...</dd>
+       <dt>Adresse:</dt>
+       <dd>...</dd>
+       <dt>Tildelt bolig:</dt>
+       <dd>...</dd>
+</dl>
+
+
+<dl class="right_column">
+       <dt><input type="checkbox" disabled="disabled" />&nbsp Utflytting</dt>
+       <dd>&nbsp</dd>
+       <dt>Stilling:</dt>
+       <dd>....</dd>
+       <dt>Avd.:</dt>
+       <dd>...</dd>
+       <dt>Innflytting-dato:</dt>
+       <dd>...</dd>
+       <dt>Utflytting-dato:</dt>
+       <dd>...</dd>
+</dl>
+</div>
+
+
+<div class="one_column">
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" /></dt>
+       <dd>Lever nøkler etter utflytting til vaktmesters postkasse i 
postkasserommet</dd>
+       <dt><input type="checkbox" disabled="disabled" /></dt>
+       <dd>Underrett vaktmester vedr. eventuelle mangler/skader</dd>
+       <dt><input type="checkbox" disabled="disabled" /></dt>
+       <dd>Har du tjenestetelefon – meld fra til personalkontoret (ikke 
Telenor)</dd>
+</dl>
+</div>
+
+<div class="one_column">
+
+<table>
+       <tr>
+               <td>Husleie uten møbler</td>
+               <td>Kr.:</td>
+               <td>....</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Husleie med møbler</td>
+               <td>Kr.:</td>
+               <td>....</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Utstyr</td>
+               <td>Kr.:</td>
+               <td>....</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Sengetøy/Håndduker</td>
+               <td>Kr.:</td>
+               <td>....</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>Husleie</td>
+               <td>Kr.:</td>
+               <td>....</td>
+               <td>Pr.mnd.</td>
+       </tr>
+       <tr>
+               <td>1 mnd forskudd</td>
+               <td>Kr.:</td>
+               <td>....</td>
+               <td>Pr.mnd.</td>
+       </tr>
+</table>
+</div>
+
+
+<div class="one_column">
+<p>Merknader: <strong>Boligen (hybelen) skal ved flytting være ryddet og 
rengjort.</strong></p>
+</div>
+<p></p>
+
+<div class="one_column">
+<p>Dato:</p>
+<table>
+       <tr>
+               <td align="center">
+               <p class="sign">Underskrift leietaker</p>
+               </td>
+               <td align="center">
+               <p class="sign">Underskrift vaktmester</p>
+               </td>
+       </tr>
+</table>
+</div>
+
+
+<p>Kopi:</p>
+<p><input type="checkbox" disabled="disabled" />Personalkontoret</p>
+<p><input type="checkbox" disabled="disabled" />Lønningskontoret</p>
+</body>
+</html>
\ No newline at end of file

Added: trunk/rental/templates/base/pdf/rental_contract_personalbolig.php
===================================================================
--- trunk/rental/templates/base/pdf/rental_contract_personalbolig.php           
                (rev 0)
+++ trunk/rental/templates/base/pdf/rental_contract_personalbolig.php   
2011-02-21 11:45:09 UTC (rev 7027)
@@ -0,0 +1,342 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Leiekontrakt for pesonalbolig</title>
+<link rel="stylesheet" type="text/css" href="css/contract.css" />
+</head>
+<body>
+<img 
src="http://www.nordlandssykehuset.no/getfile.php/NLSH_bilde%20og%20filarkiv/Internett/NLSH_logo_siste.jpg%20%28352x58%29.jpg";
 alt="Nordlanssykehuset logo" />
+<h1>LEIEKONTRAKT</h1>
+<h2>FOR PERSONALBOLIG</h2>
+
+
+
+<table class="header">
+       <tr>
+               <th>1. Utleier</th>
+               <th colspan="2">2. Leier</th>
+       </tr>
+       <tr>
+               <td>Nordlandssykehuset</td>
+               <td bgcolor="#C0C0C0" width="120px">Navn:</td>
+               <td>Navn på leietaker</td>
+       </tr>
+       <tr>
+               <td>Boligseksjonen</td>
+               <td bgcolor="#C0C0C0"  >Fødselsnummer:</td>
+               <td>Fødselsnr. på leietaker:</td>
+       </tr>
+       <tr>
+               <td><strong>Kløveråsv. 1 8002 Bodø</strong></td>
+               <td bgcolor="#C0C0C0" >Arbeidssted:</td>
+               <td>Arbeidssted for leietarker:</td>
+       </tr>
+</table>
+
+
+<dl class="section_header">
+       <dt>3.</dt>
+       <dd>Eiendom</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Gnr. .... Bnr. ... i Bodø kommune.</dd>
+
+</dl>
+
+<dl class="section_header">
+       <dt>4.</dt>
+       <dd>Leieobjekt</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>X rom + <input type="checkbox" disabled="disabled" 
checked="checked" /> kjøkken, <input type="checkbox" disabled="disabled" 
checked="checked" /> bad</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Annet:</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Ytre rom:</dd>
+</dl>
+<dl class="section_header">
+       <dt>5.</dt>
+       <dd>Begrensning</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" /></dt>
+       <dd>Leier har ikke rett til å bruke:</dd>
+
+</dl>
+
+<dl class="section_header">
+       <dt>6.</dt>
+       <dd>Kontrakten art og varighet</dd>
+</dl>
+
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Leiekontrakten gjelder en <i>PERSONALBOLIG</i>s, bolig som leier 
har leid i egenskap av arbeidstaker, og er knyttet opp mot leiers tilsetting i 
Nordlandssykehuset.<br />
+       <i>OBS: Utleieformen gir leier færre rettigheter enn ved leie av annen 
bolig.</i></dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Leieforholdet er tidsbestemt og starter den ......... kl1200<br />
+       og opphører uten oppsigelse den ......... kl 1200<br />
+       <i>Minstetiden er i utgangspunktet tre år for tidsbestemte leieavtaler. 
Dersom kortere tid enn minstetiden er valgt i denne kontrakt, er det likevel 
lovlig fordi utleier har en annen saklig grunn
+       for tidsavgrensningen, jfr punkt 25.</i></dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Leier kan si opp leieavtalen med 2 - to - måneders frist til 
fraflytting ved utløpet av den kalendermåned fristen utløper i. Oppsigelsen 
skal være skriftlig.</dd>
+</dl>
+<div class="one_column">
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Oppsigelse av leiers tilsettingsforhold i Nordlandssykehuset gir 
saklig grunnlag for oppsigelse av leieavtalen, jfr pkt 19.</dd>
+
+</dl>
+</div>
+
+
+<dl class="section_header">
+       <dt>7.</dt>
+       <dd>Leiesum</dd>
+</dl>
+<p>Leien er ved kontraktsinngåelse fastsatt til <br />
+Kr ...... pr. måned.</p>
+
+<dl class="section_header">
+       <dt>8.</dt>
+       <dd>Strøm og brensel</dd>
+</dl>
+
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Leier tegner eget strømabonnement</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>A konto i tillegg til leien, for tiden kr pr. mnd.</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>9.</dt>
+       <dd>Andre tillegg</dd>
+</dl>
+
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>kabel-tv, .... pr måned / kroner</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>miljøtillegg, .... pr måned / kroner</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>garasje, .... pr måned / kroner</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>10.</dt>
+       <dd>Leiebetaling</dd>
+</dl>
+<p>Husleien betales forskuddsvis og forfallsdato er sammenfallende med 
lønningsdato. Ved første forfall betales for 2 - to - måneders husleie.</p>
+<div class="one_column">
+<p align="center">Leier/arbeidstaker samtykker i at utleier/arbeidsgiver 
trekker husleie, og <br />
+eventuelt misligholdt husleie, direkte av lønningen, jfr Arbeidsmiljølovens § 
55 nr 3 c.</p>
+</div>
+<p>Manglende dekning, eller for lite trekkgrunnlag, på lønningen er å anse som 
et vesentlig mislighold av leieavtalen, jfr avtalens pkt 21 a).</p>
+<dl class="section_header">
+       <dt>11 a)</dt>
+       <dd>Regulering av leie i takt med endringene i konsumprisindeksen</dd>
+</dl>
+<p>Partene kan, med en måneds skriftlig varsel, kreve leien regulert i takt 
med endringene i konsumprisindeksen i tiden etter siste leiefastsetting. 
Regulering kan tidligst settes i verk et år
+etter at siste leiefastsetting ble satt i verk. Utgangspunktet for 
reguleringen er den konsumprisindeks som forelå ved kontraktsinngåelse.</p>
+<dl class="section_header">
+       <dt>11 b)</dt>
+       <dd>Regulering av leie til gjengs leie</dd>
+</dl>
+<p>Dersom leieforholdet har vart i minst to år og seks måneder uten annen 
leieregulering enn etter konsumprisindeksen, kan begge parter, uten oppsigelse, 
men med seks måneders skriftlig varsel,
+kreve at leien blir satt til gjengs leie ved utleie av liknende bolig på 
liknende avtalevilkår.</p>
+
+<dl class="section_header">
+       <dt>12</dt>
+       <dd>Sikkerhet</dd>
+</dl>
+<p>Innbetalt forskuddsleie for èn måned tilbakeføres til leieren når 
leieforholdet er opphørt, og boligen er besiktet og godtatt av utleier, jfr pkt 
23.</p>
+
+<dl class="section_header">
+       <dt>13</dt>
+       <dd>Utleiers plikter</dd>
+</dl>
+<p>Utleier plikter i leietiden å stille boligen til leiers disposisjon i 
samsvar med denne avtalen. Utleier plikter å stille boligen til rådighet for 
leier til avtalt tid, rengjort, med hele ruter
+og brukelige låser med nøkler til alle utvendige dører. I leietiden plikter 
utleier å holde boligen og eiendommen for øvrig i den stand som følger av 
avtalen og husleielovens bestemmelser.</p>
+<p>Misligholder utleier sine plikter, kan leier gjøre beføyelsene i 
husleielovens kap. 2 gjeldende. Erstatning for indirekte tap som nevnt i § 2-14 
annet ledd kan ikke kreves.</p>
+<p>Melding om at boligen ikke er i den stand som følger av avtalen eller 
husleieloven, må leier gi til utleier innen rimelig tid etter at leier burde 
oppdaget forholdet. I motsatt fall mister
+leier retten til å påberope manglene. Dette gjelder likevel ikke dersom 
utleier har opptrådt grovt uaktsomt eller i strid med redelighet og god tro.</p>
+
+<dl class="section_header">
+       <dt>14</dt>
+       <dd>Utleier og leiers vedlikeholdsplikt</dd>
+</dl>
+<p>Utleier forestår alt vedlikehold. Til dette hører vedlikehold og fornying 
av gulvbelegg, maling og tapet på og innenfor de vegger som omgir boligen. Det 
samme gjelder innvendige dører samt dør
+til og den innvendige del av balkong, terrasse og veranda. Leier skal 
vedlikeholde og om nødvendig skifte ut låser med nøkler, sikringer, ruter, 
kraner, brytere, kontakter, lyspærer og lignende
+forbruksmateriell. Ved innbrudd i boligen har leier plikt til å 
reparere/skifte ut ødelagte dører/vinduer, så langt utgiften er dekket av 
vanlig hjemforsikring (se pkt. 16). Leier dekker mulig
+egenandel.</p>
+<p>Leier skal vedlikeholde alle installasjoner, utstyr og gjenstander som 
boligen er utleid med. Dersom vedlikehold ikke er regnings svarende, påhviler 
utskifting utleier.</p>
+<p>Leier kan ikke uten utleiers samtykke foreta forandringer i husrommet eller 
på eiendommen for øvrig, jfr husleielovens § 5-4 annet ledd.</p>
+
+
+<dl class="section_header">
+       <dt>15</dt>
+       <dd>Leiers øvrige plikter</dd>
+</dl>
+<p>Leier plikter å behandle boligen med tilbørlig aktsomhet, og for øvrig i 
samsvar med denne avtalen. Boligen kan ikke brukes til annet formål enn 
beboelse. Leier plikter å følge vanlige
+ordensregler, og rimelig påbud som utleier har fastsatt til sikring av god 
husorden. Leieobjektet skal holdes oppvarmet når det er fare for frost. Leier 
plikter å erstatte all selvforskyldt skade, og
+all skade som skyldes medlemmer av husstanden, framleiere eller andre leier 
har gitt adgang til boligen, innen de rammer husleieloven § 5-8 setter. Leier 
plikter straks å sende melding til utleier om
+skade på boligen som må utbedres uten opphold.</p>
+<p>Leier plikter foreta renhold av felles trapper og trappeganger.</p>
+
+<p>Andre skader på boligen plikter leier å sende melding om innen rimelig tid. 
Leier plikter for øvrig å gjøre det som med rimelighet kan forventes for å 
avverge økonomisk tap for utleier som
+følge av skade som nevnt over. Er leier selv ikke skyld i skaden, kan 
forsvarlige utgifter ved tiltaket kreves erstattet, sammen med en rimelig 
godtgjørelse for utført arbeid.</p>
+
+<p>Leier plikter å gi utleier eller dennes representant adgang til boligen for 
tilsyn. Videre plikter leier å gi utleier eller andre adgang til boligen i den 
utstrekning det er nødvendig for å
+utføre pliktig vedlikehold, lovlige forandringer eller andre arbeider for å 
forhindre skade på boligen eller eiendommen for øvrig. Utleier disponerer egen 
nøkkel som om nødvendig kan brukes i slike
+tilfeller. Leier skal varsles i rimelig tid før de foretas tilsyn eller 
vedlikeholdsarbeider.</p>
+
+<dl class="section_header">
+       <dt>16</dt>
+       <dd>Forsikring av innbo m.v.</dd>
+</dl>
+<p>Leier plikter til enhver tid å ha innboforsikring. Utleier kan kreve at 
leier framlegger forsikringsbevis med vilkår, og kvittering for betalt 
forsikring. Ved skade på boligen skal leiers
+forsikring benyttes så langt den dekker, inkludert mulig egenandel, før 
utleiers forsikring benyttes.</p>
+<p>Utleier har ikke ansvar for skader eller tap som måtte som måtte oppstå ved 
innbrudd, brann, vannskade mv. utover det som dekkes av de forsikringer utleier 
har som huseier. Dette gjelder
+likevel ikke skader eller tap som skyldes utleiers mislighold.</p>
+
+<dl class="section_header">
+       <dt>17</dt>
+       <dd>Framleie</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Framleie er ikke tillatt, med mindre det er skriftlig avtalt.</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Framleie er tillatt til .......................</dd>
+       <dt></dt>
+       <dd><i>Vilkår for avtalt framleie / husstandsfellesskap, skal påføres 
kontraktens pkt 25.</i></dd>
+</dl>
+
+<dl class="section_header">
+       <dt>18</dt>
+       <dd>Dyrehold</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Dyrehold er ikke tillatt, med mindre det er skriftlig avtalt.</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Dyrehold er tillatt, ved at leier kan ha 
.......................</dd>
+       <dt></dt>
+       <dd><i>Leier kan holde dyr dersom gode grunner taler for det, og 
dyreholdet ikke er til ulempe for utleier eller andre brukere av eiendommen. 
Utleiers skriftlige samtykke, og eventuelle
+       vilkår for avtalt dyrehold, skal påføres denne kontrakten, jfr pkt 
25.</i></dd>
+</dl>
+
+<dl class="section_header">
+       <dt>19</dt>
+       <dd>Oppsigelse</dd>
+</dl>
+<p>Dersom kontrakten er tidsubestemt, og utleier vil si denne opp, skal 
oppsigelsen være skriftlig og begrunnet. Oppsigelsen skal opplyse om at leier 
kan protestere skriftlig til utleier innen en
+måned etter at oppsigelsen er mottatt. Oppsigelsen skal dessuten opplyse om at 
dersom leier ikke protesterer innen fristen, taper leier sin rett til å 
påberope seg at oppsigelsen er i strid med
+husleieloven, jfr dens § 9-8 første ledd annet punktum, og at utleier i så 
fall kan begjære tvangsfravikelse etter tvangsfullbyrdelsesloven § 13-2 tredje 
ledd bokstav c.</p>
+<p>En leieavtale som er inngått for bestemt tid, opphører uten oppsigelse ved 
utløpet av den avtalte leietid. Det kan avtales at en tidsbestemt leieavtale 
skal kunne sies opp i leietiden, jfr
+husleielovens § 9-2 første og annet ledd.</p>
+
+<dl class="section_header">
+       <dt>20</dt>
+       <dd>Flyttingsoppfordring</dd>
+</dl>
+<p>Dersom kontrakten er inngått for en bestemt tid (tidsbestemt), må utleier 
innen tre måneder <strong>etter</strong> kontraktens utløpsdato sende skriftlig 
oppfordring om at leier må fraflytte
+leieobjektet. I motsatt fall vil kontrakten gå over til å være 
tidsubestemt.</p>
+
+<dl class="section_header">
+       <dt>21</dt>
+       <dd>Leiers avtalebrudd, utkastelsesklausul</dd>
+</dl>
+<p></p>
+
+<dl class="section_header">
+       <dt>22</dt>
+       <dd>Fraflytting</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt>a)</dt>
+       <dd>Leier vedtar at tvangsfravikelse kan kreves hvis leie etter avtalt 
tilleggsytelse ikke er betalt, og leier ikke innen 14 dager etter skriftlig 
varsel etter tvangsfullbyrdelsesloven § 4-18 er
+       sendt, har fraflyttet leiligheten, jfr samme lov § 13-2 tredje ledd a). 
I varselet skal det stå at utkastelse vil bli begjært dersom fraflytting ikke 
skjer, samt at utkastelse kan unngås dersom leien
+       med renter og kostnader blir betalt før utkastelsen gjennomføres.</dd>
+       <dt>b)</dt>
+       <dd>Leier vedtar at tvangsfravikelse kan kreves når leietiden er løpt 
ut, jfr § 13-2 tredje ledd b) i tvangsfullbyrdelsesloven.</dd>
+       <dt>c)</dt>
+       <dd>Ved vesentlig brudd på leieavtalen, kan utleier heve leieavtalen, 
jfr husleieloven § 9-9. Leier plikter da å fraflytte boligen.</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>23</dt>
+       <dd>Leieforholdets opphør</dd>
+</dl>
+<p>Den dagen leieforholdet opphører, skal leier stille boligen med tilbehør 
til utleiers disposisjon. Tilbakelevering anses for skjedd når utleier har fått 
nøkler og ellers uhindret adkomst til
+boligen. Forlater leier boligen på en slik måte at leieforholdet klart må 
ansees oppgitt, kan utleier straks disponere over den.</p>
+<p>Boligen med tilbehør skal være ryddet, rengjort og for øvrig i kontrakts- 
og håndverksmessig godt vedlikeholdt stand. Utleier aksepterer normal slit og 
elde fram til fraflytting.</p>
+<p>Er boligen i dårligere stand enn hva som er avtalt eller fastsatt i pkt. 
14, kan utleier kreve dekket nødvendige utgifter til utbedring. Kravet skal 
være framsatt innen rimelig tid etter at
+utleier burde ha oppdaget mangelen. Denne fristen gjelder ikke hvis leier har 
opptrådt grovt uaktsomt eller i strid med redelighet og god tro.</p>
+<p>Fast inventar, ledninger og lignende som leier har anbrakt eller latt 
anbringe i leieobjektet, tilfaller utleier hvis utskilling ville medføre 
uforholdsmessige omkostninger eller urimelig
+verditap. Ved en eventuell utskilling må leier utbedre de skader som oppstår 
på boligen med tilbehør.</p>
+<p>Stilles ikke boligen til utleiers disposisjon den dagen leieforholdet skal 
opphøre, kan utleier kreve vederlag tilsvarende avtalt leie inntil leiers bruk 
opphører.</p>
+
+<div class="one_column">
+<p align="center">Leier/arbeidstaker samtykker i at utleier/arbeidsgiver 
trekker skyldig beløp som her<br />
+er nevnt direkte av leierens lønn og feriepenger, jfr Arbeidsmiljølovens § 55 
nr 3 c.</p>
+</div>
+<p>Etterlatt løsøre som tilhører leier eller noen i leiers husstand skal tas 
hånd om av utleier for leiers regning. Rent skrot kan kastes umiddelbart. 
Medfører omsorgsplikten arbeid, kan utleier
+kreve en rimelig godtgjørelse for dette. Utleier skal så vidt mulig skriftlig 
oppfordre leier til å hente løsøre. Utleier kan holde løsøret tilbake inntil 
kostnadene med oppbevaringen dekkes eller
+betryggende sikkerhet stilles. Utleier kan selge løsøre for leiers regning 
dersom kostnadene eller ulempene med oppbevaringen blir urimelige, eller dersom 
leier venter urimelig lenge med å betale
+kostnadene eller med å overta løsøre. Er det grunn til å tro at salgssummen 
ikke vil dekke salgskostnadene, kan utleier i stedet rå over tingen på annen 
hensiktsmessig måte.</p>
+<dl class="section_header">
+       <dt>24</dt>
+       <dd>Tinglysing</dd>
+</dl>
+<p>Kontrakten kan ikke tinglyses uten utleiers samtykke.</p>
+
+<dl class="section_header">
+       <dt>25</dt>
+       <dd>Særlige bestemmelser</dd>
+</dl>
+<dl class="checkbox_list">
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Boligen er øremerket til andre tilsatte.</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Boligen er allerede utleid til tilsatte som skal flytte inn dag. 
måned år</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Boligen skal selges.</dd>
+       <dt><input type="checkbox" disabled="disabled" checked="checked" /></dt>
+       <dd>Ettersom Nordlandssykehuset står foran salg av personalboliger må 
det presiseres at sykehuset ikke står ansvarlig for å skaffe deg ny bolig 
dersom salg skulle skje innen botidens utløp.</dd>
+</dl>
+
+<dl class="section_header">
+       <dt>26</dt>
+       <dd>Boligens stand</dd>
+</dl>
+<p>Leier er oppfordret til på forhånd å undersøke boligen. Boligen leies ut i 
den stand den er ved overtakelsen.</p>
+
+
+<table>
+       <tr>
+               <td colspan="2" align="center"><i>Bodø den [dato]</i></td>
+       </tr>
+       <tr>
+               <th>Utleier</th>
+               <th>Leier</th>
+       </tr>
+       <tr>
+               <td align="center">
+               <p class="sign">Ragnar Mjelle<br />
+               Boligforvalter</p>
+               </td>
+               <td align="center">
+               <p class="sign">[Navn på leietaker]<br />
+               &nbsp</p>
+               </td>
+       </tr>
+</table>
+
+
+</body>
+</html>
\ No newline at end of file




reply via email to

[Prev in Thread] Current Thread [Next in Thread]