Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
B
Brescia Customizations
Manage
Activity
Members
Labels
Plan
Issues
0
Issue boards
Milestones
Wiki
Code
Merge requests
0
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
CiviCRM Extensions
Brescia
Brescia Customizations
Commits
a4e90a48
Commit
a4e90a48
authored
10 years ago
by
Edsel Lopez
Browse files
Options
Downloads
Patches
Plain Diff
Initial commit
parent
f3d2b0d4
No related branches found
Branches containing commit
No related tags found
Tags containing commit
1 merge request
!1
Initial commit
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
brescia.civix.php
+215
-0
215 additions, 0 deletions
brescia.civix.php
brescia.php
+70
-0
70 additions, 0 deletions
brescia.php
info.xml
+21
-0
21 additions, 0 deletions
info.xml
with
306 additions
and
0 deletions
brescia.civix.php
0 → 100644
+
215
−
0
View file @
a4e90a48
<?php
// AUTO-GENERATED FILE -- Civix may overwrite any changes made to this file
/**
* (Delegated) Implementation of hook_civicrm_config
*/
function
_brescia_civix_civicrm_config
(
&
$config
=
NULL
)
{
static
$configured
=
FALSE
;
if
(
$configured
)
return
;
$configured
=
TRUE
;
$template
=&
CRM_Core_Smarty
::
singleton
();
$extRoot
=
dirname
(
__FILE__
)
.
DIRECTORY_SEPARATOR
;
$extDir
=
$extRoot
.
'templates'
;
if
(
is_array
(
$template
->
template_dir
)
)
{
array_unshift
(
$template
->
template_dir
,
$extDir
);
}
else
{
$template
->
template_dir
=
array
(
$extDir
,
$template
->
template_dir
);
}
$include_path
=
$extRoot
.
PATH_SEPARATOR
.
get_include_path
(
);
set_include_path
(
$include_path
);
}
/**
* (Delegated) Implementation of hook_civicrm_xmlMenu
*
* @param $files array(string)
*/
function
_brescia_civix_civicrm_xmlMenu
(
&
$files
)
{
foreach
(
_brescia_civix_glob
(
__DIR__
.
'/xml/Menu/*.xml'
)
as
$file
)
{
$files
[]
=
$file
;
}
}
/**
* Implementation of hook_civicrm_install
*/
function
_brescia_civix_civicrm_install
()
{
_brescia_civix_civicrm_config
();
if
(
$upgrader
=
_brescia_civix_upgrader
())
{
return
$upgrader
->
onInstall
();
}
}
/**
* Implementation of hook_civicrm_uninstall
*/
function
_brescia_civix_civicrm_uninstall
()
{
_brescia_civix_civicrm_config
();
if
(
$upgrader
=
_brescia_civix_upgrader
())
{
return
$upgrader
->
onUninstall
();
}
}
/**
* (Delegated) Implementation of hook_civicrm_enable
*/
function
_brescia_civix_civicrm_enable
()
{
_brescia_civix_civicrm_config
();
if
(
$upgrader
=
_brescia_civix_upgrader
())
{
if
(
is_callable
(
array
(
$upgrader
,
'onEnable'
)))
{
return
$upgrader
->
onEnable
();
}
}
}
/**
* (Delegated) Implementation of hook_civicrm_disable
*/
function
_brescia_civix_civicrm_disable
()
{
_brescia_civix_civicrm_config
();
if
(
$upgrader
=
_brescia_civix_upgrader
())
{
if
(
is_callable
(
array
(
$upgrader
,
'onDisable'
)))
{
return
$upgrader
->
onDisable
();
}
}
}
/**
* (Delegated) Implementation of hook_civicrm_upgrade
*
* @param $op string, the type of operation being performed; 'check' or 'enqueue'
* @param $queue CRM_Queue_Queue, (for 'enqueue') the modifiable list of pending up upgrade tasks
*
* @return mixed based on op. for 'check', returns array(boolean) (TRUE if upgrades are pending)
* for 'enqueue', returns void
*/
function
_brescia_civix_civicrm_upgrade
(
$op
,
CRM_Queue_Queue
$queue
=
NULL
)
{
if
(
$upgrader
=
_brescia_civix_upgrader
())
{
return
$upgrader
->
onUpgrade
(
$op
,
$queue
);
}
}
function
_brescia_civix_upgrader
()
{
if
(
!
file_exists
(
__DIR__
.
'/CRM/Brescia/Upgrader.php'
))
{
return
NULL
;
}
else
{
return
CRM_Brescia_Upgrader_Base
::
instance
();
}
}
/**
* Search directory tree for files which match a glob pattern
*
* Note: Dot-directories (like "..", ".git", or ".svn") will be ignored.
* Note: In Civi 4.3+, delegate to CRM_Utils_File::findFiles()
*
* @param $dir string, base dir
* @param $pattern string, glob pattern, eg "*.txt"
* @return array(string)
*/
function
_brescia_civix_find_files
(
$dir
,
$pattern
)
{
if
(
is_callable
(
array
(
'CRM_Utils_File'
,
'findFiles'
)))
{
return
CRM_Utils_File
::
findFiles
(
$dir
,
$pattern
);
}
$todos
=
array
(
$dir
);
$result
=
array
();
while
(
!
empty
(
$todos
))
{
$subdir
=
array_shift
(
$todos
);
foreach
(
_brescia_civix_glob
(
"
$subdir
/
$pattern
"
)
as
$match
)
{
if
(
!
is_dir
(
$match
))
{
$result
[]
=
$match
;
}
}
if
(
$dh
=
opendir
(
$subdir
))
{
while
(
FALSE
!==
(
$entry
=
readdir
(
$dh
)))
{
$path
=
$subdir
.
DIRECTORY_SEPARATOR
.
$entry
;
if
(
$entry
{
0
}
==
'.'
)
{
}
elseif
(
is_dir
(
$path
))
{
$todos
[]
=
$path
;
}
}
closedir
(
$dh
);
}
}
return
$result
;
}
/**
* (Delegated) Implementation of hook_civicrm_managed
*
* Find any *.mgd.php files, merge their content, and return.
*/
function
_brescia_civix_civicrm_managed
(
&
$entities
)
{
$mgdFiles
=
_brescia_civix_find_files
(
__DIR__
,
'*.mgd.php'
);
foreach
(
$mgdFiles
as
$file
)
{
$es
=
include
$file
;
foreach
(
$es
as
$e
)
{
if
(
empty
(
$e
[
'module'
]))
{
$e
[
'module'
]
=
'biz.jmaconsulting.brescia'
;
}
$entities
[]
=
$e
;
}
}
}
/**
* Glob wrapper which is guaranteed to return an array.
*
* The documentation for glob() says, "On some systems it is impossible to
* distinguish between empty match and an error." Anecdotally, the return
* result for an empty match is sometimes array() and sometimes FALSE.
* This wrapper provides consistency.
*
* @see http://php.net/glob
* @param string $pattern
* @return array, possibly empty
*/
function
_brescia_civix_glob
(
$pattern
)
{
$result
=
glob
(
$pattern
);
return
is_array
(
$result
)
?
$result
:
array
();
}
/**
* Inserts a navigation menu item at a given place in the hierarchy
*
* $menu - menu hierarchy
* $path - path where insertion should happen (ie. Administer/System Settings)
* $item - menu you need to insert (parent/child attributes will be filled for you)
* $parentId - used internally to recurse in the menu structure
*/
function
_brescia_civix_insert_navigation_menu
(
&
$menu
,
$path
,
$item
,
$parentId
=
NULL
)
{
static
$navId
;
// If we are done going down the path, insert menu
if
(
empty
(
$path
))
{
if
(
!
$navId
)
$navId
=
CRM_Core_DAO
::
singleValueQuery
(
"SELECT max(id) FROM civicrm_navigation"
);
$navId
++
;
$menu
[
$navId
]
=
array
(
'attributes'
=>
array_merge
(
$item
,
array
(
'label'
=>
CRM_Utils_Array
::
value
(
'name'
,
$item
),
'active'
=>
1
,
'parentID'
=>
$parentId
,
'navID'
=>
$navId
,
))
);
return
true
;
}
else
{
// Find an recurse into the next level down
$found
=
false
;
$path
=
explode
(
'/'
,
$path
);
$first
=
array_shift
(
$path
);
foreach
(
$menu
as
$key
=>
&
$entry
)
{
if
(
$entry
[
'attributes'
][
'name'
]
==
$first
)
{
if
(
!
$entry
[
'child'
])
$entry
[
'child'
]
=
array
();
$found
=
_brescia_civix_insert_navigation_menu
(
$entry
[
'child'
],
implode
(
'/'
,
$path
),
$item
,
$key
);
}
}
return
$found
;
}
}
This diff is collapsed.
Click to expand it.
brescia.php
0 → 100644
+
70
−
0
View file @
a4e90a48
<?php
require_once
'brescia.civix.php'
;
/**
* Implementation of hook_civicrm_config
*/
function
brescia_civicrm_config
(
&
$config
)
{
_brescia_civix_civicrm_config
(
$config
);
}
/**
* Implementation of hook_civicrm_xmlMenu
*
* @param $files array(string)
*/
function
brescia_civicrm_xmlMenu
(
&
$files
)
{
_brescia_civix_civicrm_xmlMenu
(
$files
);
}
/**
* Implementation of hook_civicrm_install
*/
function
brescia_civicrm_install
()
{
return
_brescia_civix_civicrm_install
();
}
/**
* Implementation of hook_civicrm_uninstall
*/
function
brescia_civicrm_uninstall
()
{
return
_brescia_civix_civicrm_uninstall
();
}
/**
* Implementation of hook_civicrm_enable
*/
function
brescia_civicrm_enable
()
{
return
_brescia_civix_civicrm_enable
();
}
/**
* Implementation of hook_civicrm_disable
*/
function
brescia_civicrm_disable
()
{
return
_brescia_civix_civicrm_disable
();
}
/**
* Implementation of hook_civicrm_upgrade
*
* @param $op string, the type of operation being performed; 'check' or 'enqueue'
* @param $queue CRM_Queue_Queue, (for 'enqueue') the modifiable list of pending up upgrade tasks
*
* @return mixed based on op. for 'check', returns array(boolean) (TRUE if upgrades are pending)
* for 'enqueue', returns void
*/
function
brescia_civicrm_upgrade
(
$op
,
CRM_Queue_Queue
$queue
=
NULL
)
{
return
_brescia_civix_civicrm_upgrade
(
$op
,
$queue
);
}
/**
* Implementation of hook_civicrm_managed
*
* Generate a list of entities to create/deactivate/delete when this module
* is installed, disabled, uninstalled.
*/
function
brescia_civicrm_managed
(
&
$entities
)
{
return
_brescia_civix_civicrm_managed
(
$entities
);
}
This diff is collapsed.
Click to expand it.
info.xml
0 → 100644
+
21
−
0
View file @
a4e90a48
<?xml version="1.0"?>
<extension
key=
"biz.jmaconsulting.brescia"
type=
"module"
>
<file>
brescia
</file>
<name>
Brescia Customizations
</name>
<description>
Brescia Customizations
</description>
<license>
AGPL-3.0
</license>
<maintainer>
<author>
JMA Consulting
</author>
<email>
joe.murray@jmaconsulting.biz
</email>
</maintainer>
<releaseDate>
2014-06-04
</releaseDate>
<version>
1.0
</version>
<develStage>
alpha
</develStage>
<compatibility>
<ver>
4.4
</ver>
</compatibility>
<comments>
This is a new, undeveloped module
</comments>
<civix>
<namespace>
CRM/Brescia
</namespace>
</civix>
</extension>
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment