Bug 643904 - Bugzilla::Extension should export a web_dir attribute to get full path to the extension's web directory

r/a=mkanat


git-svn-id: svn://10.0.0.236/trunk@262091 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
mkanat%bugzilla.org
2011-03-22 22:16:43 +00:00
parent 2a7dcccec5
commit c9b1431bfa
3 changed files with 21 additions and 2 deletions

View File

@@ -26,7 +26,7 @@ use Bugzilla::Constants;
use Bugzilla::Error;
use Bugzilla::Install::Util qw(
extension_code_files extension_template_directory
extension_package_directory);
extension_package_directory extension_web_directory);
use File::Basename;
use File::Spec;
@@ -214,6 +214,7 @@ sub lib_dir {
sub template_dir { return extension_template_directory(@_); }
sub package_dir { return extension_package_directory(@_); }
sub web_dir { return extension_web_directory(@_); }
######################
# Helper Subroutines #
@@ -786,6 +787,15 @@ This defaults to the C<template> subdirectory of the L</package_dir>.
If you want to override this method, and you have a F<Config.pm>, you must
override this method in F<Config.pm>.
=head3 C<web_dir>
The directory that your package's web related files are in, such as css and javascript.
This defaults to the C<web> subdirectory of the L</package_dir>.
If you want to override this method, and you have a F<Config.pm>, you must
override this method in F<Config.pm>.
=head3 C<lib_dir>
The directory where your extension's libraries are.

View File

@@ -46,6 +46,7 @@ our @EXPORT_OK = qw(
extension_package_directory
extension_requirement_packages
extension_template_directory
extension_web_directory
indicate_progress
install_string
include_languages
@@ -214,6 +215,14 @@ sub extension_template_directory {
return "$base_dir/template";
}
# Used in this file and in Bugzilla::Extension.
sub extension_web_directory {
my $extension = shift;
my $class = ref($extension) || $extension;
my $base_dir = extension_package_directory($class);
return "$base_dir/web";
}
# For extensions that are in the extensions/ dir, this both sets and fetches
# the name of the directory that stores an extension's "stuff". We need this
# when determining the template directory for extensions (or other things