Ratings
-
- Ave Rating: @ratings.ratings@
+
+ Ave Rating: @ratings.stars;noquote@ @ratings.all_ratings@
Unrated
- Your rating
+ Your rating @stars;noquote@
@rate_form;noquote@
@@ -26,7 +26,7 @@
Index: openacs-4/contrib/packages/cop-base/lib/cop-sidebar.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/cop-base/lib/cop-sidebar.tcl,v
diff -u -N -r1.2 -r1.3
--- openacs-4/contrib/packages/cop-base/lib/cop-sidebar.tcl 14 May 2004 12:36:33 -0000 1.2
+++ openacs-4/contrib/packages/cop-base/lib/cop-sidebar.tcl 23 Jun 2004 14:22:50 -0000 1.3
@@ -3,7 +3,6 @@
set subsite [ad_conn subsite_id]
set user_id [ad_conn user_id]
set cur_pkg [ad_conn package_id]
-set ratingicons [cop::rating::icon_base]
db_1row obj_title {select o.object_type, pretty_name as tname, pretty_plural as tname_s, title as obj_title, package_id as obj_pkg, acs_object__name(object_id) as acs_name from acs_objects o, acs_object_types t where object_id = :displayed_object_id and t.object_type = o.object_type}
if {[empty_string_p $obj_title]} {
@@ -15,40 +14,45 @@
}
# get the clipboard info
-cop::clipboard::clipboards -create_new -force_default [ad_conn user_id] clipboards
-cop::clipboard::clipped $displayed_object_id [ad_conn user_id] clipped
+clipboard::clipboards -create_new -force_default [ad_conn user_id] clipboards
+clipboard::clipped $displayed_object_id [ad_conn user_id] clipped
# record object view and get current count.
-db_string record_view "select cop_object_record_view(:displayed_object_id, :user_id)" -default 0
-if {![db_0or1row views "select views, unique_views from cop_object_view_agg where object_id = :displayed_object_id"]} {
+db_string record_view "select views__record_view(:displayed_object_id, :user_id)" -default 0
+if {![db_0or1row views "select views, unique_views from view_aggregates where object_id = :displayed_object_id"]} {
set views missing
set unique_views missing
}
# Stuff for ratings.
-set rate_form [cop::rating::widget -object_one $displayed_object_id]
-set current_rating [cop::rating::get -object_one $displayed_object_id -user_id $user_id]
-array set ratings [cop::rating::aggregate::get -object_one $displayed_object_id]
-if {[info exists ratings(ratings)]} {
- set ratings(stars) [format %.1f [expr round($ratings(rating_sum)*2.0/$ratings(ratings))/2.0]]
+set rate_form [ratings::form -object_id $displayed_object_id]
+set current_rating [ratings::get -object_id $displayed_object_id -user_id $user_id]
+array set ratings [ratings::aggregates::get -object_id $displayed_object_id]
+if {[info exists ratings(all_rating_ave)]} {
+ set ratings(stars) [ratings::icon::html_fragment -rating $ratings(all_rating_ave)]
} else {
- set ratings(ratings) 0
+ set ratings(all_ratings) 0
+ set ratings(stars) {}
}
if {![empty_string_p $current_rating]} {
- set stars [format %.1f $current_rating ]
+ set stars [ratings::icon::html_fragment -rating $current_rating]
}
+set return_url [ad_return_url]
-
# stuff for comments
# todo: suppress for things that should not be commentable.
set comment_link {}
append comment_link [general_comments_get_comments -print_content_p 1 $displayed_object_id [ad_return_url]]
-append comment_link [general_comments_create_link -object_name "Name for $displayed_object_id" -link_attributes {class="button"} $displayed_object_id [ad_return_url] ]
+append comment_link [general_comments_create_link -object_name "Name for $displayed_object_id" -link_attributes {class="button"} $displayed_object_id $return_url ]
# Stuff for related items
-cop::relation::get_related -object_id $displayed_object_id -datasource related
+relation::get_related -object_id $displayed_object_id -datasource related
+template::multirow extend related delete_url
+template::multirow foreach related {
+ set delete_url [export_vars -base related/relation-delete {rel_id return_url}]
+}
# mapped categories:
set catass_list [category::list::get_pretty_list \
Index: openacs-4/contrib/packages/cop-base/tcl/cop-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/cop-base/tcl/cop-procs.tcl,v
diff -u -N -r1.6 -r1.7
--- openacs-4/contrib/packages/cop-base/tcl/cop-procs.tcl 7 May 2004 16:43:21 -0000 1.6
+++ openacs-4/contrib/packages/cop-base/tcl/cop-procs.tcl 23 Jun 2004 14:22:50 -0000 1.7
@@ -1,4 +1,4 @@
-# /packages/cop-base/tcl/clipboard-procs.tcl
+# /packages/cop-base/tcl/cop-procs.tcl
ad_library {
TCL library for the COP package
@@ -33,7 +33,8 @@
ad_proc -public cop::util::package_id {
{-node_id {}}
} {
- Returns the first cop-ui package under node_id, node_id defaults to the nearest
+ Returns the first cop-ui package under node_id,
+ node_id defaults to the nearest acs-subsite.
@param subsite_id the subsite for which to find the cop-ui package_id
@@ -42,7 +43,7 @@
@author Jeff Davis davis@xarg.net
@creation-date 2003-10-30
} {
- if {[empty_string_p $node_id]} {
+ if {[empty_string_p $node_id]} {
set node_id [site_node::closest_ancestor_package -package_key acs-subsite -node_id [ad_conn node_id] -include_self -element node_id]
}
@@ -76,14 +77,14 @@
set __the_body__ [read $file]
close $file
# Interpolate the vars.
- if {![empty_string_p binds]} {
+ if {![empty_string_p $binds]} {
foreach {var val} $binds {
set $var [ad_quotehtml $val]
}
- if {![info exists Id]} {
+ if {![info exists Id]} {
set Id {$Id}
}
- if {[catch {set __the_body__ [subst -nobackslashes -nocommands ${__the_body__}]} err]} {
+ if {[catch {set __the_body__ [subst -nobackslashes -nocommands ${__the_body__}]} err]} {
error $err
}
}
@@ -92,7 +93,7 @@
return $root_node
}
-ad_proc -private cop::install {filename binds} {
+ad_proc -private cop::install {filename binds} { set root_node [cop::load_install_xml $filename $binds]
install a CoP subsite from an xml definition.
@parameter filename path to the xml file defining the CoP relative to serverroot.
@@ -248,8 +249,8 @@
} {
# need to strip nodes which have no mounted package...
set packages [list]
- foreach package [site_node::get_children -all -node_id $node_id -element package_id] {
- if {![empty_string_p $package]} {
+ foreach package [site_node::get_children -all -node_id $node_id -element package_id] {
+ if {![empty_string_p $package]} {
lappend packages $package
}
}
@@ -276,3 +277,64 @@
return [util_memoize [list cop::util::packages_no_mem -node_id $subsite_node_id] 1200]
}
+
+ad_proc -private cop::util::catmap {
+ -name
+ -description
+ -context_id
+ -cats
+} {
+ set tree_id [category_tree::add -name $name -description $description -context_id $context_id]
+
+ set parent(0) {}
+ set parent(1) {}
+ set parent(2) {}
+
+ foreach {cat key} $cats {
+ set parent([expr $cat + 1]) [category::add -noflush -name $key -description $key -tree_id $tree_id -parent_id $parent($cat)]
+ }
+
+ category_tree::flush_cache $tree_id
+ category_tree::map -tree_id $tree_id -object_id $context_id
+
+ ns_log Notice "cop::util::catmap $name tree id $tree_id created and mapped to $context_id"
+
+ return $tree_id
+}
+
+ad_proc -private cop::util::after_mount {
+ -package_id
+ -node_id
+} {
+ Create the KM categories and map them to mainsite
+} {
+ set cats {
+ 0 KM
+ 1 {Urgent question}
+ 1 {Key document}
+ 1 {Unanswered question}
+ 1 {Answered question}
+ 1 {Discussion}
+ }
+
+ set tree_id [cop::util::catmap -name KM -description "KM categories" -context_id [subsite::main_site_id] -cats $cats]
+
+ parameter::set_value -package_id $package_id -parameter KMCategoryTreeID -value $tree_id
+}
+
+ad_proc -private cop::util::after_ui_mount {
+ -package_id
+ -node_id
+} {
+ Map the KM categories for the cop-base instance to the subsite containing the cop-ui package
+
+ WARNING: This is a callback in cop-ui not cop-base.
+} {
+ set subsite_id [site_node::closest_ancestor_package -package_key acs-subsite -node_id $node_id -element package_id]
+
+ set base_id [apm_package_id_from_key cop-base]
+
+ set tree_id [parameter::get -package_id $base_id -parameter KMCategoryTreeID]
+
+ category_tree::map -tree_id $tree_id -object_id $subsite_id
+}
Index: openacs-4/contrib/packages/cop-base/www/admin/acl.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/cop-base/www/admin/acl.tcl,v
diff -u -N -r1.1 -r1.2
--- openacs-4/contrib/packages/cop-base/www/admin/acl.tcl 27 Apr 2004 12:38:54 -0000 1.1
+++ openacs-4/contrib/packages/cop-base/www/admin/acl.tcl 23 Jun 2004 14:22:50 -0000 1.2
@@ -1,1562 +1,1550 @@
-set cats {1
- {advice, benefits and emergencies}
- 2
- {accident at work}
- 2
- {advice}
- 3
- {consumer}
- 3
- {debt and money}
- 3
- {employment}
- 3
- {family law}
- 3
- {health}
- 3
- {housing}
- 3
- {immigration and nationalty}
- 3
- {legal}
- 3
- {welfare rights}
- 2
- {advice centres}
- 3
- {call centre}
- 3
- {contact centre}
- 3
- {libraries}
- 3
- {local service centres}
- 3
- {one stop shops}
- 2
- {benefits}
- 3
- {attendance allowance}
- 3
- {council tax benefit}
- 3
- {disability living allowance}
- 3
- {help with health costs}
- 3
- {help with house repairs}
- 3
- {help with fuel bills}
- 3
- {housing benefit}
- 3
- {incapacity benefit}
- 3
- {income support}
- 3
- {invalid care allowance}
- 3
- {severe disablement allowance}
- 3
- {help with residential or nursing home fees}
- 3
- {travel concessions}
- 2
- {careers service}
- 2
- {citizens advice bureau}
- 2
- {complaints}
- 2
- {debt}
- 3
- {debt counselling}
- 2
- {emergencies}
- 3
- {alarms}
- 3
- {ambulance}
- 3
- {civic protection}
- 3
- {council services}
- 3
- {emergency planning}
- 3
- {phone numbers}
- 2
- {floods}
- 3
- {sandbags}
- 2
- {nuisances}
- 3
- {animals}
- 4
- {barking dogs}
- 3
- {neighbours}
- 3
- {noise}
- 3
- {pest control}
- 2
- {rates}
- 1
- {business}
- 2
- {building regulations}
- 2
- {building sites}
- 2
- {business advice}
- 2
- {business charges}
- 2
- {business development}
- 2
- {business grants}
- 2
- {business sites}
- 2
- {business support}
- 2
- {chamber of commerce}
- 2
- {commercial property}
- 2
- {council approved suppliers list}
- 2
- {economic development}
- 3
- {regeneration}
- 2
- {economic statistics}
- 2
- {health and safety}
- 2
- {industrial property}
- 2
- {licensing}
- 3
- {acupuncture}
- 3
- {amusement arcades}
- 3
- {betting offices}
- 3
- {bingo}
- 3
- {caravans and camping sites}
- 3
- {civic licensing}
- 3
- {entertainment}
- 3
- {gaming machines}
- 3
- {hackney carriages}
- 3
- {livestock markets}
- 3
- {massage and special treatments}
- 3
- {minerals}
- 3
- {pet shops}
- 2
- {local businesses}
- 2
- {markets}
- 3
- {farmers market}
- 3
- {market licence}
- 2
- {permits}
- 3
- {scaffolding}
- 3
- {skips}
- 2
- {planning applications}
- 2
- {premises to let}
- 2
- {regeneration}
- 2
- {self employment}
- 2
- {shops}
- 2
- {small medium enterprises}
- 2
- {starting a business}
- 2
- {trading standards}
- 2
- {youth enterprise}
- 1
- {community, people and living}
- 2
- {accesibility}
- 2
- {births, deaths, marriage registration}
- 2
- {burials}
- 3
- {cemeteries}
- 2
- {charity events}
- 2
- {clubs and societies}
- 3
- {charities}
- 3
- {Voluntary organisations}
- 4
- {volunteering}
- 2
- {community centres}
- 2
- {community groups}
- 2
- {community safety}
- 2
- {community services}
- 2
- {consumer protection}
- 2
- {consumer advice}
- 2
- {coroners office}
- 2
- {crematoria}
- 2
- {crime and disorder}
- 3
- {anti-social behaviour}
- 3
- {CCTV}
- 3
- {crime preventions}
- 3
- {prisons}
- 3
- {victim support}
- 2
- {discrimination}
- 2
- {elderly}
- 2
- {equalities}
- 2
- {ethnic minority groups}
- 2
- {events}
- 2
- {fire services}
- 2
- {grants}
- 3
- {lottery}
- 2
- {harassment}
- 3
- {neighbours}
- 3
- {racial}
- 2
- {health and safety}
- 2
- {identity cards}
- 2
- {interpreters service}
- 2
- {key workers}
- 2
- {life events}
- 2
- {life saving}
- 2
- {luncheon clubs}
- 2
- {magistrates}
- 2
- {maps}
- 2
- {markets}
- 2
- {neighbourhood}
- 2
- {police}
- 2
- {register of births, deaths and marriages}
- 2
- {sexuality}
- 2
- {smart cards}
- 2
- {travellers}
- 2
- {twin towns}
- 2
- {voluntary organisations}
- 2
- {weddings}
- 2
- {Welsh language}
- 2
- {women}
- 2
- {young people}
- 3
- {advice}
- 3
- {youth offending team}
- 3
- {working}
- 3
- {youth services}
- 1
- {council and democracy}
- 2
- {adjacent authorities}
- 2
- {best value}
- 3
- {best value performance indicators}
- 3
- {best value performance plan}
- 2
- {bylaws}
- 2
- {cabinet}
- 2
- {campaigns}
- 2
- {census}
- 2
- {central government}
- 2
- {citizens charter}
- 2
- {commitees}
- 3
- {agendas}
- 3
- {meetings}
- 3
- {minutes}
- 3
- {membership}
- 3
- {papers}
- 3
- {reports}
- 3
- {representation}
- 3
- {scrutiny}
- 3
- {services}
- 2
- {consultation}
- 2
- {council}
- 3
- {composition of}
- 2
- {council land and property}
- 2
- {council tax}
- 2
- {complaints}
- 2
- {councillors}
- 3
- {surgeries}
- 3
- {interests}
- 2
- {decision making}
- 2
- {departments}
- 2
- {elections}
- 3
- {electoral boundaries}
- 3
- {electoral registration}
- 3
- {electoral services}
- 3
- {postal voting}
- 3
- {proxy votes}
- 2
- {equal opportunities}
- 2
- {European affairs}
- 2
- {European funding}
- 2
- {finances}
- 2
- {forward plan}
- 2
- {licences}
- 3
- {entertainment licences}
- 3
- {skip licences}
- 2
- {local stratgeic plan}
- 2
- {marches}
- 2
- {mayor}
- 2
- {media enquiries}
- 2
- {members of parliament}
- 2
- {members of European parliament}
- 2
- {modernising}
- 2
- {parish councils}
- 2
- {parliamentry boundaries}
- 2
- {policy and performance}
- 3
- {best value}
- 2
- {political parties}
- 2
- {population statistics}
- 2
- {standards}
- 2
- {statistics}
- 3
- {population}
- 2
- {town councils}
- 2
- {trade unions}
- 2
- {wards}
- 1
- {education}
- 2
- {after school clubs}
- 2
- {adult education}
- 2
- {advisory service}
- 2
- {appeals}
- 2
- {awards}
- 2
- {careers}
- 2
- {colleges and universities}
- 3
- {six form colleges}
- 3
- {universities}
- 3
- {specialist colleges}
- 3
- {tertiary colleges}
- 2
- {commnunity education}
- 2
- {education centres}
- 2
- {education standards}
- 2
- {education welfare service}
- 2
- {evening classes}
- 2
- {examinations}
- 3
- {Key Stage 2}
- 3
- {GCSE}
- 3
- {A and S levels}
- 2
- {extra curricular}
- 2
- {grants}
- 2
- {home teaching}
- 2
- {inclusive education}
- 2
- {learning difficulties}
- 2
- {life long learning}
- 2
- {music centres}
- 2
- {National Grid for Learning}
- 2
- {OFSTED inspections / reports}
- 2
- {pre school}
- 3
- {creche}
- 3
- {early years development}
- 3
- {play groups}
- 3
- {play schemes}
- 3
- {play programmes}
- 2
- {scholarships and trust funds}
- 2
- {schools}
- 3
- {admissions}
- 4
- {appeals}
- 3
- {attendance}
- 3
- {buildings}
- 3
- {bullying}
- 3
- {clothing grants}
- 3
- {crossing patrols}
- 3
- {educational development behaviour centre}
- 3
- {exclusion}
- 3
- {free milk}
- 3
- {free school meals}
- 3
- {independent schools}
- 3
- {inspections}
- 3
- {junior schools}
- 4
- {first schools}
- 4
- {middle schools}
- 4
- {high schools}
- 3
- {nursery schools}
- 3
- {primary schools}
- 3
- {public schools}
- 3
- {pupil support service}
- 3
- {religious schools}
- 3
- {secondary schools}
- 3
- {transport}
- 2
- {students}
- 3
- {awards}
- 3
- {student grants}
- 3
- {loans and fees}
- 2
- {teachers}
- 2
- {training}
- 2
- {work based learning}
- 1
- {environment}
- 2
- {abandoned vehhicles}
- 2
- {accident prevention}
- 2
- {advertisements - display of}
- 2
- {agenda 21}
- 2
- {agri food supply}
- 2
- {air quality}
- 2
- {animals}
- 3
- {animal nuisances}
- 3
- {animal welfare}
- 3
- {cruelty}
- 3
- {dangerous or wild}
- 3
- {dead animals}
- 3
- {dogs}
- 4
- {fouling}
- 4
- {guard dogs}
- 4
- {wardens}
- 3
- {farm animals}
- 3
- {performing animals}
- 3
- {rabies}
- 2
- {asbestos}
- 2
- {beaches}
- 3
- {cleanliness}
- 3
- {safety}
- 2
- {bonfires}
- 2
- {buildings}
- 3
- {alterations}
- 3
- {design}
- 3
- {extensions}
- 2
- {cleansing}
- 2
- {community safety}
- 2
- {composting}
- 2
- {conservation}
- 3
- {archeology}
- 3
- {archeological sites and monuments}
- 3
- {areas of outstanding national beauty}
- 3
- {coast protection}
- 3
- {conservation areas}
- 3
- {historic buildings}
- 2
- {contaminated land}
- 2
- {crop spraying}
- 2
- {dangerous structures}
- 2
- {demolition}
- 3
- {design guide}
- 2
- {dilapidated premises}
- 2
- {draining and sewerage}
- 3
- {blocked drains}
- 3
- {cesspools and septic tanks}
- 3
- {effluent}
- 3
- {sewers}
- 2
- {dustbins}
- 2
- {environmental health}
- 3
- {air quality}
- 3
- {food hygiene}
- 4
- {delivery vehicles}
- 3
- {hygiene inspections}
- 3
- {infectious diseases}
- 3
- {noise}
- 3
- {pests}
- 3
- {pollution}
- 2
- {energy}
- 3
- {conservation}
- 3
- {efficiency}
- 2
- {fire escape regualtions}
- 2
- {flyposting}
- 2
- {flytipping}
- 2
- {food}
- 3
- {food hygiene and safety}
- 3
- {food labelling}
- 3
- {mobile snack bars}
- 2
- {graffiti removal}
- 2
- {grass cutting}
- 2
- {grounds maintenance}
- 2
- {hazardous substances}
- 3
- {radioactive material}
- 2
- {hedges and scrubs}
- 2
- {health and safety}
- 2
- {hoardings}
- 2
- {inspections}
- 3
- {hygiene and safety}
- 2
- {land}
- 3
- {council land}
- 3
- {land charges}
- 3
- {land fill}
- 4
- {land fill tax}
- 3
- {land registry}
- 2
- {land use and register}
- 2
- {landscaping}
- 2
- {litter}
- 3
- {litter bins}
- 3
- {litter complaints}
- 2
- {listed buildings}
- 2
- {local agenda 21}
- 2
- {local development plans}
- 2
- {morturies}
- 2
- {planning}
- 3
- {advice}
- 3
- {appeals}
- 3
- {applications}
- 3
- {change of use}
- 3
- {compulsory purchase orders}
- 3
- {conveyancing}
- 3
- {enforcement}
- 3
- {unitary development plan}
- 2
- {pest control}
- 3
- {ants}
- 3
- {bed bugs}
- 3
- {bees}
- 3
- {beetles}
- 3
- {cockroaches}
- 3
- {fleas}
- 3
- {fumigation}
- 3
- {insects}
- 3
- {lice}
- 3
- {mice}
- 3
- {rats}
- 3
- {wasps}
- 2
- {pollution}
- 3
- {air}
- 4
- {exhaust fumes}
- 3
- {chemical}
- 3
- {control}
- 3
- {land}
- 3
- {smoke control}
- 3
- {sulphur dioxide monitoring}
- 3
- {water}
- 2
- {recycling}
- 2
- {road safety}
- 2
- {rubbish collection}
- 3
- {dustbins}
- 3
- {bulky waste}
- 2
- {satellite dishes}
- 2
- {scaffolding}
- 2
- {skips}
- 2
- {street repairs}
- 2
- {toxic substances}
- 3
- {lead}
- 2
- {trading standards}
- 3
- {calibration service}
- 3
- {catering}
- 3
- {consumer advice}
- 3
- {counterfeiting}
- 3
- {description of goods}
- 3
- {doorstep sales persons}
- 3
- {ear piercing}
- 3
- {fair trading}
- 3
- {fake goods}
- 3
- {fraud}
- 3
- {food hawkers}
- 3
- {garages}
- 3
- {hairdressers}
- 3
- {hallmarking}
- 3
- {hawkers}
- 3
- {liquid petroleum gas}
- 3
- {misleading advertising}
- 3
- {money lenders}
- 3
- {raffles}
- 3
- {street trading}
- 2
- {trees}
- 3
- {trees conservation}
- 2
- {waste}
- 3
- {business}
- 3
- {clinical}
- 3
- {dangerous}
- 3
- {garden}
- 3
- {household}
- 3
- {poisonous}
- 3
- {trade}
- 2
- {water}
- 3
- {drinking water}
- 3
- {water meters}
- 3
- {water safety}
- 2
- {weight and measures}
- 1
- {health}
- 2
- {AIDS/HIV}
- 2
- {drugs action}
- 2
- {health action zone}
- 2
- {health benefits}
- 2
- {health promotion}
- 2
- {health visitors}
- 2
- {heat waves}
- 2
- {infectious diseases}
- 2
- {mental health promotion}
- 2
- {smoking}
- 1
- {housing}
- 2
- {allocations}
- 2
- {applications}
- 2
- {bed and breakfast}
- 2
- {build your own home}
- 2
- {choice based lettings}
- 2
- {council housing}
- 2
- {conversions}
- 3
- {loft conversions}
- 2
- {decoration allowance}
- 2
- {empty properties}
- 2
- {energy conservation}
- 2
- {estate management}
- 2
- {evictions}
- 2
- {fuel grants}
- 2
- {gas repairs}
- 2
- {home improvement grants}
- 2
- {home ownership}
- 2
- {homelessness}
- 2
- {hostels}
- 2
- {houseboats}
- 2
- {house numbering}
- 2
- {household numbering}
- 2
- {household waste}
- 2
- {housing associations and cooperatives}
- 2
- {housing benefits}
- 2
- {housing offices}
- 2
- {housing policies}
- 2
- {housing register}
- 2
- {houses in multi occupancy (hmo)}
- 2
- {garages}
- 2
- {insulation}
- 2
- {letting property}
- 2
- {planning}
- 2
- {postcode allocation}
- 2
- {mortgages with the council}
- 2
- {private sector housing}
- 2
- {properties for sale / rent}
- 2
- {rehousing}
- 2
- {refuges}
- 2
- {renovation grants}
- 2
- {rent}
- 3
- {arrears}
- 3
- {paying}
- 3
- {rent officer service}
- 2
- {repairs}
- 3
- {damp}
- 2
- {repossessions}
- 2
- {right to buy}
- 2
- {safety}
- 3
- {asbestos}
- 3
- {gas}
- 2
- {shared ownership}
- 2
- {sheltered housing}
- 2
- {smoke alarms}
- 2
- {squatters}
- 2
- {supported housing}
- 2
- {temporary accommodation}
- 2
- {tenants}
- 3
- {tenants and residents groups}
- 3
- {tenants participation}
- 2
- {transfers and exchanges}
- 2
- {waiting list}
- 1
- {jobs and careers}
- 2
- {careers advice}
- 2
- {job centres}
- 2
- {job seekers allowance}
- 2
- {modern apprenticeships}
- 2
- {retirement}
- 2
- {self employed}
- 2
- {training}
- 2
- {unemployment}
- 2
- {vacancies}
- 2
- {voluntary work}
- 2
- {work experience}
- 2
- {young people}
- 1
- {leisure}
- 2
- {accommodation}
- 3
- {bed and breakfast}
- 3
- {hotels}
- 2
- {allotments}
- 2
- {archives}
- 3
- {diocesan records}
- 2
- {arts}
- 3
- {galleries}
- 3
- {development}
- 2
- {beaches}
- 2
- {boats}
- 2
- {bowls}
- 2
- {camp sites}
- 2
- {castles}
- 2
- {children's activities}
- 2
- {cinemas}
- 2
- {cicuses}
- 2
- {clubs and societies}
- 2
- {coaching}
- 2
- {ccountryside}
- 3
- {country parks}
- 3
- {countryside management}
- 3
- {countryside and nature conservation}
- 2
- {crafts}
- 2
- {cycle routes}
- 2
- {dance}
- 3
- {tea dances}
- 2
- {drama}
- 2
- {eating out}
- 2
- {entertainment}
- 2
- {events}
- 2
- {fairs}
- 2
- {fairgrounds}
- 2
- {firework displays}
- 2
- {fishing}
- 3
- {fishing permits}
- 2
- {gardens}
- 3
- {gardening competitions}
- 3
- {public gardens}
- 2
- {golf courses}
- 2
- {gyms}
- 2
- {halls for hire}
- 2
- {heritage}
- 3
- {historic buildings}
- 3
- {historic monuments}
- 3
- {historical records}
- 3
- {historic sites}
- 2
- {horse riding}
- 2
- {keep fit}
- 2
- {leisure centres}
- 2
- {libraries}
- 3
- {branch libraries}
- 3
- {mobile libraries}
- 3
- {reference libraries}
- 2
- {local history}
- 2
- {museums}
- 2
- {parks}
- 3
- {arboriculture}
- 3
- {open spaces}
- 2
- {playgrounds}
- 3
- {adventure playgrounds}
- 3
- {fencing}
- 2
- {picnic sites}
- 2
- {ranger service}
- 2
- {rivers}
- 3
- {river moorings}
- 2
- {swimming}
- 2
- {sports pitches}
- 3
- {cricket}
- 3
- {football}
- 3
- {hockey}
- 2
- {sports}
- 3
- {grants}
- 2
- {theatres}
- 2
- {tourism}
- 3
- {accommodation}
- 2
- {travel}
- 2
- {village greens}
- 2
- {walks}
- 2
- {wildfire}
- 2
- {woodlands}
- 2
- {youth clubs}
- 2
- {youth hostels}
- 2
- {zoos}
- 1
- {news}
- 2
- {mailing lists}
- 2
- {media}
- 2
- {media enquries}
- 2
- {newspapers}
- 2
- {press enquries}
- 2
- {press releases}
- 2
- {publications}
- 1
- {social care}
- 2
- {abuse}
- 3
- {alcohol}
- 3
- {drugs}
- 3
- {substance}
- 2
- {access - disabled}
- 2
- {adoption and fostering}
- 2
- {alarms}
- 3
- {elderly and disabled}
- 2
- {anti - poverty}
- 2
- {assessment of care needs}
- 2
- {asylum seekers}
- 2
- {behaviour suport service}
- 2
- {bereavement}
- 2
- {blindness and visual impairment}
- 2
- {care needs}
- 2
- {careline}
- 2
- {childminders}
- 2
- {children's homes}
- 2
- {child protection}
- 3
- {children at risk}
- 3
- {children in need}
- 2
- {choosing a residential home}
- 2
- {community services}
- 3
- {community care}
- 2
- {day care}
- 3
- {day care for elders}
- 3
- {day centres}
- 2
- {deaf services}
- 2
- {dial-a-ride}
- 2
- {disabilty}
- 3
- {disability access}
- 2
- {domestic violence}
- 2
- {domiciliary care in the home}
- 2
- {elderly people}
- 2
- {family support}
- 2
- {health}
- 2
- {home care services}
- 3
- {home help}
- 2
- {holidays}
- 2
- {hospital discharge}
- 2
- {hostels}
- 2
- {families}
- 2
- {fostering}
- 2
- {meals on wheels}
- 2
- {mental health}
- 2
- {orange badge scheme}
- 2
- {parenting}
- 2
- {refugees}
- 2
- {residential accommodation}
- 2
- {respite care}
- 2
- {sensory impairment}
- 2
- {shop mobility}
- 2
- {visual impairment}
- 2
- {warden call}
- 2
- {welfare rights}
- 2
- {winter fuel allowance}
- 1
- {transport and streets}
- 2
- {abandoned vehicles}
- 2
- {abnormal loads}
- 2
- {bridges}
- 2
- {bridleways}
- 2
- {concessionary rates}
- 2
- {cycling}
- 3
- {proficiency}
- 2
- {dog fouling}
- 2
- {foot bridges}
- 2
- {footpaths}
- 2
- {garages}
- 2
- {grass verges}
- 2
- {gritting}
- 2
- {gully cleansing}
- 2
- {HGV management and signing}
- 2
- {highways}
- 2
- {icy roads}
- 2
- {leaves}
- 2
- {litter}
- 2
- {local tansport links}
- 2
- {manhole covers}
- 2
- {mini cabs}
- 2
- {MOT}
- 2
- {motorcycle training}
- 2
- {park and ride}
- 2
- {parking}
- 3
- {car parking badges}
- 3
- {car parks}
- 3
- {controlled parking zones}
- 3
- {parking bays}
- 3
- {parking fines}
- 3
- {parking meters}
- 3
- {residents parking}
- 2
- {pavements}
- 2
- {pedestrian / pelican crossings}
- 2
- {potholes}
- 2
- {public conveniences}
- 2
- {public transport}
- 3
- {buses}
- 4
- {bus lanes}
- 4
- {bus passes}
- 4
- {bus shelters}
- 3
- {trains}
- 3
- {trams}
- 2
- {public rights of way}
- 3
- {adopted highways}
- 3
- {adopted roads}
- 2
- {public weighbridge}
- 2
- {roads}
- 3
- {building}
- 3
- {cleaning}
- 3
- {maintenance}
- 3
- {road works}
- 3
- {safety}
- 3
- {signs}
- 3
- {unadopted}
- 2
- {snow clearance}
- 2
- {speed limits}
- 2
- {street lighting}
- 2
- {taxi ranks}
- 2
- {traffic calming}
- 2
- {traffic lights}
- 2
- {traffic management}
- 2
- {transport planning}
- 2
- {travel enquiries}
- 2
- {weighbridges}
- 2
- {zebra crossings}
-}
-
-
-set tree_id [category_tree::add -name APLAWS -description "APLAWS Categories" -context_id [subsite::main_site_id]]
-
-set parent(1) {}
-
-foreach {cat key} $cats {
- set parent([expr $cat + 1]) [category::add -noflush -name $key -description $key -tree_id $tree_id -parent_id $parent($cat)]
-}
-
-category_tree::flush_cache $tree_id
-
-category_tree::map -tree_id $tree_id -object_id [subsite::main_site_id]
-
-ns_return 200 text/plain "tree $tree_id created and mapped to [subsite::main_site_id]"
\ No newline at end of file
+set cats {
+ 1 {Advice, benefits and emergencies}
+ 2
+ {accident at work}
+ 2
+ {advice}
+ 3
+ {consumer}
+ 3
+ {debt and money}
+ 3
+ {employment}
+ 3
+ {family law}
+ 3
+ {health}
+ 3
+ {housing}
+ 3
+ {immigration and nationalty}
+ 3
+ {legal}
+ 3
+ {welfare rights}
+ 2
+ {advice centres}
+ 3
+ {call centre}
+ 3
+ {contact centre}
+ 3
+ {libraries}
+ 3
+ {local service centres}
+ 3
+ {one stop shops}
+ 2
+ {benefits}
+ 3
+ {attendance allowance}
+ 3
+ {council tax benefit}
+ 3
+ {disability living allowance}
+ 3
+ {help with health costs}
+ 3
+ {help with house repairs}
+ 3
+ {help with fuel bills}
+ 3
+ {housing benefit}
+ 3
+ {incapacity benefit}
+ 3
+ {income support}
+ 3
+ {invalid care allowance}
+ 3
+ {severe disablement allowance}
+ 3
+ {help with residential or nursing home fees}
+ 3
+ {travel concessions}
+ 2
+ {careers service}
+ 2
+ {citizens advice bureau}
+ 2
+ {complaints}
+ 2
+ {debt}
+ 3
+ {debt counselling}
+ 2
+ {emergencies}
+ 3
+ {alarms}
+ 3
+ {ambulance}
+ 3
+ {civic protection}
+ 3
+ {council services}
+ 3
+ {emergency planning}
+ 3
+ {phone numbers}
+ 2
+ {floods}
+ 3
+ {sandbags}
+ 2
+ {nuisances}
+ 3
+ {animals}
+ 4
+ {barking dogs}
+ 3
+ {neighbours}
+ 3
+ {noise}
+ 3
+ {pest control}
+ 2
+ {rates}
+ 1
+ {business}
+ 2
+ {building regulations}
+ 2
+ {building sites}
+ 2
+ {business advice}
+ 2
+ {business charges}
+ 2
+ {business development}
+ 2
+ {business grants}
+ 2
+ {business sites}
+ 2
+ {business support}
+ 2
+ {chamber of commerce}
+ 2
+ {commercial property}
+ 2
+ {council approved suppliers list}
+ 2
+ {economic development}
+ 3
+ {regeneration}
+ 2
+ {economic statistics}
+ 2
+ {health and safety}
+ 2
+ {industrial property}
+ 2
+ {licensing}
+ 3
+ {acupuncture}
+ 3
+ {amusement arcades}
+ 3
+ {betting offices}
+ 3
+ {bingo}
+ 3
+ {caravans and camping sites}
+ 3
+ {civic licensing}
+ 3
+ {entertainment}
+ 3
+ {gaming machines}
+ 3
+ {hackney carriages}
+ 3
+ {livestock markets}
+ 3
+ {massage and special treatments}
+ 3
+ {minerals}
+ 3
+ {pet shops}
+ 2
+ {local businesses}
+ 2
+ {markets}
+ 3
+ {farmers market}
+ 3
+ {market licence}
+ 2
+ {permits}
+ 3
+ {scaffolding}
+ 3
+ {skips}
+ 2
+ {planning applications}
+ 2
+ {premises to let}
+ 2
+ {regeneration}
+ 2
+ {self employment}
+ 2
+ {shops}
+ 2
+ {small medium enterprises}
+ 2
+ {starting a business}
+ 2
+ {trading standards}
+ 2
+ {youth enterprise}
+ 1
+ {community, people and living}
+ 2
+ {accesibility}
+ 2
+ {births, deaths, marriage registration}
+ 2
+ {burials}
+ 3
+ {cemeteries}
+ 2
+ {charity events}
+ 2
+ {clubs and societies}
+ 3
+ {charities}
+ 3
+ {Voluntary organisations}
+ 4
+ {volunteering}
+ 2
+ {community centres}
+ 2
+ {community groups}
+ 2
+ {community safety}
+ 2
+ {community services}
+ 2
+ {consumer protection}
+ 2
+ {consumer advice}
+ 2
+ {coroners office}
+ 2
+ {crematoria}
+ 2
+ {crime and disorder}
+ 3
+ {anti-social behaviour}
+ 3
+ {CCTV}
+ 3
+ {crime preventions}
+ 3
+ {prisons}
+ 3
+ {victim support}
+ 2
+ {discrimination}
+ 2
+ {elderly}
+ 2
+ {equalities}
+ 2
+ {ethnic minority groups}
+ 2
+ {events}
+ 2
+ {fire services}
+ 2
+ {grants}
+ 3
+ {lottery}
+ 2
+ {harassment}
+ 3
+ {neighbours}
+ 3
+ {racial}
+ 2
+ {health and safety}
+ 2
+ {identity cards}
+ 2
+ {interpreters service}
+ 2
+ {key workers}
+ 2
+ {life events}
+ 2
+ {life saving}
+ 2
+ {luncheon clubs}
+ 2
+ {magistrates}
+ 2
+ {maps}
+ 2
+ {markets}
+ 2
+ {neighbourhood}
+ 2
+ {police}
+ 2
+ {register of births, deaths and marriages}
+ 2
+ {sexuality}
+ 2
+ {smart cards}
+ 2
+ {travellers}
+ 2
+ {twin towns}
+ 2
+ {voluntary organisations}
+ 2
+ {weddings}
+ 2
+ {Welsh language}
+ 2
+ {women}
+ 2
+ {young people}
+ 3
+ {advice}
+ 3
+ {youth offending team}
+ 3
+ {working}
+ 3
+ {youth services}
+ 1
+ {council and democracy}
+ 2
+ {adjacent authorities}
+ 2
+ {best value}
+ 3
+ {best value performance indicators}
+ 3
+ {best value performance plan}
+ 2
+ {bylaws}
+ 2
+ {cabinet}
+ 2
+ {campaigns}
+ 2
+ {census}
+ 2
+ {central government}
+ 2
+ {citizens charter}
+ 2
+ {commitees}
+ 3
+ {agendas}
+ 3
+ {meetings}
+ 3
+ {minutes}
+ 3
+ {membership}
+ 3
+ {papers}
+ 3
+ {reports}
+ 3
+ {representation}
+ 3
+ {scrutiny}
+ 3
+ {services}
+ 2
+ {consultation}
+ 2
+ {council}
+ 3
+ {composition of}
+ 2
+ {council land and property}
+ 2
+ {council tax}
+ 2
+ {complaints}
+ 2
+ {councillors}
+ 3
+ {surgeries}
+ 3
+ {interests}
+ 2
+ {decision making}
+ 2
+ {departments}
+ 2
+ {elections}
+ 3
+ {electoral boundaries}
+ 3
+ {electoral registration}
+ 3
+ {electoral services}
+ 3
+ {postal voting}
+ 3
+ {proxy votes}
+ 2
+ {equal opportunities}
+ 2
+ {European affairs}
+ 2
+ {European funding}
+ 2
+ {finances}
+ 2
+ {forward plan}
+ 2
+ {licences}
+ 3
+ {entertainment licences}
+ 3
+ {skip licences}
+ 2
+ {local stratgeic plan}
+ 2
+ {marches}
+ 2
+ {mayor}
+ 2
+ {media enquiries}
+ 2
+ {members of parliament}
+ 2
+ {members of European parliament}
+ 2
+ {modernising}
+ 2
+ {parish councils}
+ 2
+ {parliamentry boundaries}
+ 2
+ {policy and performance}
+ 3
+ {best value}
+ 2
+ {political parties}
+ 2
+ {population statistics}
+ 2
+ {standards}
+ 2
+ {statistics}
+ 3
+ {population}
+ 2
+ {town councils}
+ 2
+ {trade unions}
+ 2
+ {wards}
+ 1
+ {education}
+ 2
+ {after school clubs}
+ 2
+ {adult education}
+ 2
+ {advisory service}
+ 2
+ {appeals}
+ 2
+ {awards}
+ 2
+ {careers}
+ 2
+ {colleges and universities}
+ 3
+ {six form colleges}
+ 3
+ {universities}
+ 3
+ {specialist colleges}
+ 3
+ {tertiary colleges}
+ 2
+ {commnunity education}
+ 2
+ {education centres}
+ 2
+ {education standards}
+ 2
+ {education welfare service}
+ 2
+ {evening classes}
+ 2
+ {examinations}
+ 3
+ {Key Stage 2}
+ 3
+ {GCSE}
+ 3
+ {A and S levels}
+ 2
+ {extra curricular}
+ 2
+ {grants}
+ 2
+ {home teaching}
+ 2
+ {inclusive education}
+ 2
+ {learning difficulties}
+ 2
+ {life long learning}
+ 2
+ {music centres}
+ 2
+ {National Grid for Learning}
+ 2
+ {OFSTED inspections / reports}
+ 2
+ {pre school}
+ 3
+ {creche}
+ 3
+ {early years development}
+ 3
+ {play groups}
+ 3
+ {play schemes}
+ 3
+ {play programmes}
+ 2
+ {scholarships and trust funds}
+ 2
+ {schools}
+ 3
+ {admissions}
+ 4
+ {appeals}
+ 3
+ {attendance}
+ 3
+ {buildings}
+ 3
+ {bullying}
+ 3
+ {clothing grants}
+ 3
+ {crossing patrols}
+ 3
+ {educational development behaviour centre}
+ 3
+ {exclusion}
+ 3
+ {free milk}
+ 3
+ {free school meals}
+ 3
+ {independent schools}
+ 3
+ {inspections}
+ 3
+ {junior schools}
+ 4
+ {first schools}
+ 4
+ {middle schools}
+ 4
+ {high schools}
+ 3
+ {nursery schools}
+ 3
+ {primary schools}
+ 3
+ {public schools}
+ 3
+ {pupil support service}
+ 3
+ {religious schools}
+ 3
+ {secondary schools}
+ 3
+ {transport}
+ 2
+ {students}
+ 3
+ {awards}
+ 3
+ {student grants}
+ 3
+ {loans and fees}
+ 2
+ {teachers}
+ 2
+ {training}
+ 2
+ {work based learning}
+ 1
+ {environment}
+ 2
+ {abandoned vehhicles}
+ 2
+ {accident prevention}
+ 2
+ {advertisements - display of}
+ 2
+ {agenda 21}
+ 2
+ {agri food supply}
+ 2
+ {air quality}
+ 2
+ {animals}
+ 3
+ {animal nuisances}
+ 3
+ {animal welfare}
+ 3
+ {cruelty}
+ 3
+ {dangerous or wild}
+ 3
+ {dead animals}
+ 3
+ {dogs}
+ 4
+ {fouling}
+ 4
+ {guard dogs}
+ 4
+ {wardens}
+ 3
+ {farm animals}
+ 3
+ {performing animals}
+ 3
+ {rabies}
+ 2
+ {asbestos}
+ 2
+ {beaches}
+ 3
+ {cleanliness}
+ 3
+ {safety}
+ 2
+ {bonfires}
+ 2
+ {buildings}
+ 3
+ {alterations}
+ 3
+ {design}
+ 3
+ {extensions}
+ 2
+ {cleansing}
+ 2
+ {community safety}
+ 2
+ {composting}
+ 2
+ {conservation}
+ 3
+ {archeology}
+ 3
+ {archeological sites and monuments}
+ 3
+ {areas of outstanding national beauty}
+ 3
+ {coast protection}
+ 3
+ {conservation areas}
+ 3
+ {historic buildings}
+ 2
+ {contaminated land}
+ 2
+ {crop spraying}
+ 2
+ {dangerous structures}
+ 2
+ {demolition}
+ 3
+ {design guide}
+ 2
+ {dilapidated premises}
+ 2
+ {draining and sewerage}
+ 3
+ {blocked drains}
+ 3
+ {cesspools and septic tanks}
+ 3
+ {effluent}
+ 3
+ {sewers}
+ 2
+ {dustbins}
+ 2
+ {environmental health}
+ 3
+ {air quality}
+ 3
+ {food hygiene}
+ 4
+ {delivery vehicles}
+ 3
+ {hygiene inspections}
+ 3
+ {infectious diseases}
+ 3
+ {noise}
+ 3
+ {pests}
+ 3
+ {pollution}
+ 2
+ {energy}
+ 3
+ {conservation}
+ 3
+ {efficiency}
+ 2
+ {fire escape regualtions}
+ 2
+ {flyposting}
+ 2
+ {flytipping}
+ 2
+ {food}
+ 3
+ {food hygiene and safety}
+ 3
+ {food labelling}
+ 3
+ {mobile snack bars}
+ 2
+ {graffiti removal}
+ 2
+ {grass cutting}
+ 2
+ {grounds maintenance}
+ 2
+ {hazardous substances}
+ 3
+ {radioactive material}
+ 2
+ {hedges and scrubs}
+ 2
+ {health and safety}
+ 2
+ {hoardings}
+ 2
+ {inspections}
+ 3
+ {hygiene and safety}
+ 2
+ {land}
+ 3
+ {council land}
+ 3
+ {land charges}
+ 3
+ {land fill}
+ 4
+ {land fill tax}
+ 3
+ {land registry}
+ 2
+ {land use and register}
+ 2
+ {landscaping}
+ 2
+ {litter}
+ 3
+ {litter bins}
+ 3
+ {litter complaints}
+ 2
+ {listed buildings}
+ 2
+ {local agenda 21}
+ 2
+ {local development plans}
+ 2
+ {morturies}
+ 2
+ {planning}
+ 3
+ {advice}
+ 3
+ {appeals}
+ 3
+ {applications}
+ 3
+ {change of use}
+ 3
+ {compulsory purchase orders}
+ 3
+ {conveyancing}
+ 3
+ {enforcement}
+ 3
+ {unitary development plan}
+ 2
+ {pest control}
+ 3
+ {ants}
+ 3
+ {bed bugs}
+ 3
+ {bees}
+ 3
+ {beetles}
+ 3
+ {cockroaches}
+ 3
+ {fleas}
+ 3
+ {fumigation}
+ 3
+ {insects}
+ 3
+ {lice}
+ 3
+ {mice}
+ 3
+ {rats}
+ 3
+ {wasps}
+ 2
+ {pollution}
+ 3
+ {air}
+ 4
+ {exhaust fumes}
+ 3
+ {chemical}
+ 3
+ {control}
+ 3
+ {land}
+ 3
+ {smoke control}
+ 3
+ {sulphur dioxide monitoring}
+ 3
+ {water}
+ 2
+ {recycling}
+ 2
+ {road safety}
+ 2
+ {rubbish collection}
+ 3
+ {dustbins}
+ 3
+ {bulky waste}
+ 2
+ {satellite dishes}
+ 2
+ {scaffolding}
+ 2
+ {skips}
+ 2
+ {street repairs}
+ 2
+ {toxic substances}
+ 3
+ {lead}
+ 2
+ {trading standards}
+ 3
+ {calibration service}
+ 3
+ {catering}
+ 3
+ {consumer advice}
+ 3
+ {counterfeiting}
+ 3
+ {description of goods}
+ 3
+ {doorstep sales persons}
+ 3
+ {ear piercing}
+ 3
+ {fair trading}
+ 3
+ {fake goods}
+ 3
+ {fraud}
+ 3
+ {food hawkers}
+ 3
+ {garages}
+ 3
+ {hairdressers}
+ 3
+ {hallmarking}
+ 3
+ {hawkers}
+ 3
+ {liquid petroleum gas}
+ 3
+ {misleading advertising}
+ 3
+ {money lenders}
+ 3
+ {raffles}
+ 3
+ {street trading}
+ 2
+ {trees}
+ 3
+ {trees conservation}
+ 2
+ {waste}
+ 3
+ {business}
+ 3
+ {clinical}
+ 3
+ {dangerous}
+ 3
+ {garden}
+ 3
+ {household}
+ 3
+ {poisonous}
+ 3
+ {trade}
+ 2
+ {water}
+ 3
+ {drinking water}
+ 3
+ {water meters}
+ 3
+ {water safety}
+ 2
+ {weight and measures}
+ 1
+ {health}
+ 2
+ {AIDS/HIV}
+ 2
+ {drugs action}
+ 2
+ {health action zone}
+ 2
+ {health benefits}
+ 2
+ {health promotion}
+ 2
+ {health visitors}
+ 2
+ {heat waves}
+ 2
+ {infectious diseases}
+ 2
+ {mental health promotion}
+ 2
+ {smoking}
+ 1
+ {housing}
+ 2
+ {allocations}
+ 2
+ {applications}
+ 2
+ {bed and breakfast}
+ 2
+ {build your own home}
+ 2
+ {choice based lettings}
+ 2
+ {council housing}
+ 2
+ {conversions}
+ 3
+ {loft conversions}
+ 2
+ {decoration allowance}
+ 2
+ {empty properties}
+ 2
+ {energy conservation}
+ 2
+ {estate management}
+ 2
+ {evictions}
+ 2
+ {fuel grants}
+ 2
+ {gas repairs}
+ 2
+ {home improvement grants}
+ 2
+ {home ownership}
+ 2
+ {homelessness}
+ 2
+ {hostels}
+ 2
+ {houseboats}
+ 2
+ {house numbering}
+ 2
+ {household numbering}
+ 2
+ {household waste}
+ 2
+ {housing associations and cooperatives}
+ 2
+ {housing benefits}
+ 2
+ {housing offices}
+ 2
+ {housing policies}
+ 2
+ {housing register}
+ 2
+ {houses in multi occupancy (hmo)}
+ 2
+ {garages}
+ 2
+ {insulation}
+ 2
+ {letting property}
+ 2
+ {planning}
+ 2
+ {postcode allocation}
+ 2
+ {mortgages with the council}
+ 2
+ {private sector housing}
+ 2
+ {properties for sale / rent}
+ 2
+ {rehousing}
+ 2
+ {refuges}
+ 2
+ {renovation grants}
+ 2
+ {rent}
+ 3
+ {arrears}
+ 3
+ {paying}
+ 3
+ {rent officer service}
+ 2
+ {repairs}
+ 3
+ {damp}
+ 2
+ {repossessions}
+ 2
+ {right to buy}
+ 2
+ {safety}
+ 3
+ {asbestos}
+ 3
+ {gas}
+ 2
+ {shared ownership}
+ 2
+ {sheltered housing}
+ 2
+ {smoke alarms}
+ 2
+ {squatters}
+ 2
+ {supported housing}
+ 2
+ {temporary accommodation}
+ 2
+ {tenants}
+ 3
+ {tenants and residents groups}
+ 3
+ {tenants participation}
+ 2
+ {transfers and exchanges}
+ 2
+ {waiting list}
+ 1
+ {jobs and careers}
+ 2
+ {careers advice}
+ 2
+ {job centres}
+ 2
+ {job seekers allowance}
+ 2
+ {modern apprenticeships}
+ 2
+ {retirement}
+ 2
+ {self employed}
+ 2
+ {training}
+ 2
+ {unemployment}
+ 2
+ {vacancies}
+ 2
+ {voluntary work}
+ 2
+ {work experience}
+ 2
+ {young people}
+ 1
+ {leisure}
+ 2
+ {accommodation}
+ 3
+ {bed and breakfast}
+ 3
+ {hotels}
+ 2
+ {allotments}
+ 2
+ {archives}
+ 3
+ {diocesan records}
+ 2
+ {arts}
+ 3
+ {galleries}
+ 3
+ {development}
+ 2
+ {beaches}
+ 2
+ {boats}
+ 2
+ {bowls}
+ 2
+ {camp sites}
+ 2
+ {castles}
+ 2
+ {children's activities}
+ 2
+ {cinemas}
+ 2
+ {cicuses}
+ 2
+ {clubs and societies}
+ 2
+ {coaching}
+ 2
+ {ccountryside}
+ 3
+ {country parks}
+ 3
+ {countryside management}
+ 3
+ {countryside and nature conservation}
+ 2
+ {crafts}
+ 2
+ {cycle routes}
+ 2
+ {dance}
+ 3
+ {tea dances}
+ 2
+ {drama}
+ 2
+ {eating out}
+ 2
+ {entertainment}
+ 2
+ {events}
+ 2
+ {fairs}
+ 2
+ {fairgrounds}
+ 2
+ {firework displays}
+ 2
+ {fishing}
+ 3
+ {fishing permits}
+ 2
+ {gardens}
+ 3
+ {gardening competitions}
+ 3
+ {public gardens}
+ 2
+ {golf courses}
+ 2
+ {gyms}
+ 2
+ {halls for hire}
+ 2
+ {heritage}
+ 3
+ {historic buildings}
+ 3
+ {historic monuments}
+ 3
+ {historical records}
+ 3
+ {historic sites}
+ 2
+ {horse riding}
+ 2
+ {keep fit}
+ 2
+ {leisure centres}
+ 2
+ {libraries}
+ 3
+ {branch libraries}
+ 3
+ {mobile libraries}
+ 3
+ {reference libraries}
+ 2
+ {local history}
+ 2
+ {museums}
+ 2
+ {parks}
+ 3
+ {arboriculture}
+ 3
+ {open spaces}
+ 2
+ {playgrounds}
+ 3
+ {adventure playgrounds}
+ 3
+ {fencing}
+ 2
+ {picnic sites}
+ 2
+ {ranger service}
+ 2
+ {rivers}
+ 3
+ {river moorings}
+ 2
+ {swimming}
+ 2
+ {sports pitches}
+ 3
+ {cricket}
+ 3
+ {football}
+ 3
+ {hockey}
+ 2
+ {sports}
+ 3
+ {grants}
+ 2
+ {theatres}
+ 2
+ {tourism}
+ 3
+ {accommodation}
+ 2
+ {travel}
+ 2
+ {village greens}
+ 2
+ {walks}
+ 2
+ {wildfire}
+ 2
+ {woodlands}
+ 2
+ {youth clubs}
+ 2
+ {youth hostels}
+ 2
+ {zoos}
+ 1
+ {news}
+ 2
+ {mailing lists}
+ 2
+ {media}
+ 2
+ {media enquries}
+ 2
+ {newspapers}
+ 2
+ {press enquries}
+ 2
+ {press releases}
+ 2
+ {publications}
+ 1
+ {social care}
+ 2
+ {abuse}
+ 3
+ {alcohol}
+ 3
+ {drugs}
+ 3
+ {substance}
+ 2
+ {access - disabled}
+ 2
+ {adoption and fostering}
+ 2
+ {alarms}
+ 3
+ {elderly and disabled}
+ 2
+ {anti - poverty}
+ 2
+ {assessment of care needs}
+ 2
+ {asylum seekers}
+ 2
+ {behaviour suport service}
+ 2
+ {bereavement}
+ 2
+ {blindness and visual impairment}
+ 2
+ {care needs}
+ 2
+ {careline}
+ 2
+ {childminders}
+ 2
+ {children's homes}
+ 2
+ {child protection}
+ 3
+ {children at risk}
+ 3
+ {children in need}
+ 2
+ {choosing a residential home}
+ 2
+ {community services}
+ 3
+ {community care}
+ 2
+ {day care}
+ 3
+ {day care for elders}
+ 3
+ {day centres}
+ 2
+ {deaf services}
+ 2
+ {dial-a-ride}
+ 2
+ {disabilty}
+ 3
+ {disability access}
+ 2
+ {domestic violence}
+ 2
+ {domiciliary care in the home}
+ 2
+ {elderly people}
+ 2
+ {family support}
+ 2
+ {health}
+ 2
+ {home care services}
+ 3
+ {home help}
+ 2
+ {holidays}
+ 2
+ {hospital discharge}
+ 2
+ {hostels}
+ 2
+ {families}
+ 2
+ {fostering}
+ 2
+ {meals on wheels}
+ 2
+ {mental health}
+ 2
+ {orange badge scheme}
+ 2
+ {parenting}
+ 2
+ {refugees}
+ 2
+ {residential accommodation}
+ 2
+ {respite care}
+ 2
+ {sensory impairment}
+ 2
+ {shop mobility}
+ 2
+ {visual impairment}
+ 2
+ {warden call}
+ 2
+ {welfare rights}
+ 2
+ {winter fuel allowance}
+ 1
+ {transport and streets}
+ 2
+ {abandoned vehicles}
+ 2
+ {abnormal loads}
+ 2
+ {bridges}
+ 2
+ {bridleways}
+ 2
+ {concessionary rates}
+ 2
+ {cycling}
+ 3
+ {proficiency}
+ 2
+ {dog fouling}
+ 2
+ {foot bridges}
+ 2
+ {footpaths}
+ 2
+ {garages}
+ 2
+ {grass verges}
+ 2
+ {gritting}
+ 2
+ {gully cleansing}
+ 2
+ {HGV management and signing}
+ 2
+ {highways}
+ 2
+ {icy roads}
+ 2
+ {leaves}
+ 2
+ {litter}
+ 2
+ {local tansport links}
+ 2
+ {manhole covers}
+ 2
+ {mini cabs}
+ 2
+ {MOT}
+ 2
+ {motorcycle training}
+ 2
+ {park and ride}
+ 2
+ {parking}
+ 3
+ {car parking badges}
+ 3
+ {car parks}
+ 3
+ {controlled parking zones}
+ 3
+ {parking bays}
+ 3
+ {parking fines}
+ 3
+ {parking meters}
+ 3
+ {residents parking}
+ 2
+ {pavements}
+ 2
+ {pedestrian / pelican crossings}
+ 2
+ {potholes}
+ 2
+ {public conveniences}
+ 2
+ {public transport}
+ 3
+ {buses}
+ 4
+ {bus lanes}
+ 4
+ {bus passes}
+ 4
+ {bus shelters}
+ 3
+ {trains}
+ 3
+ {trams}
+ 2
+ {public rights of way}
+ 3
+ {adopted highways}
+ 3
+ {adopted roads}
+ 2
+ {public weighbridge}
+ 2
+ {roads}
+ 3
+ {building}
+ 3
+ {cleaning}
+ 3
+ {maintenance}
+ 3
+ {road works}
+ 3
+ {safety}
+ 3
+ {signs}
+ 3
+ {unadopted}
+ 2
+ {snow clearance}
+ 2
+ {speed limits}
+ 2
+ {street lighting}
+ 2
+ {taxi ranks}
+ 2
+ {traffic calming}
+ 2
+ {traffic lights}
+ 2
+ {traffic management}
+ 2
+ {transport planning}
+ 2
+ {travel enquiries}
+ 2
+ {weighbridges}
+ 2
+ {zebra crossings}
+}
+
+cop::util::catmap -name APLAWS -description "APLAWS categories" -context_id [subsite::main_site_id] -cats $cats
+