Skip to content

Instantly share code, notes, and snippets.

@eggsurplus
eggsurplus / configuration.php
Created November 15, 2012 16:57
Saving Admin Options For A Custom SugarCRM Module - configurator
require_once 'modules/Configurator/Configurator.php';
$configurator = new Configurator();
$configurator->loadConfig();
$configurator->config['abc_module_api_url'] = $_REQUEST['api_url'];
$configurator->saveConfig();
@eggsurplus
eggsurplus / config.html
Created November 15, 2012 17:11
Saving Admin Options For A Custom SugarCRM Module - config screen
<form name="ConfigureSettings" id="EditView" method="POST" >
<input type="hidden" name="module" value="abc_Module">
<input type="hidden" name="action" value="SaveConfig">
API URL: <input type="text" name="api_url" value="" size="35"/><br/>
<input type='submit' value='Save Configuration' />
</form>
@eggsurplus
eggsurplus / infinite_loop.php
Created December 6, 2012 03:11
Logic Hook Infinite Loop
<?php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class SO_LoopExample {
function reassign($bean, $event, $arguments)
{
$GLOBALS['log']->fatal('SO_LoopExample called for contact: '.$bean->name);
//get all contacts with the same first name...including this contact
@eggsurplus
eggsurplus / infinite_loop_resolved.php
Created December 6, 2012 03:12
Logic Hook Infinite Loop - Resolved
<?php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class SO_LoopExample {
static $already_ran = false;
function reassign($bean, $event, $arguments)
{
if(self::$already_ran == true) return;
@eggsurplus
eggsurplus / view.detail.php
Created December 7, 2012 03:36
Custom Accounts DetailView Layout by Department
<?php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
//always extend an existing view if one exists
require_once('modules/Accounts/views/view.detail.php');
class CustomAccountsViewDetail extends AccountsViewDetail
{
function preDisplay() {
global $current_user;
<form name="ConfigureSettings" id="EditView" method="POST" >
<input type="hidden" name="module" value="abc_Module">
<input type="hidden" name="action" value=”SaveConfig”>
API URL: <input type="text" name="api_url" value="" size="35"/><br/>
<input type='submit' value='Save Configuration' />
</form>
<?php
require_once('modules/Administration/Administration.php');
$administration = new Administration();
//do data validation, etc here
//....
//save the setting to the config table
$administration->saveSetting('abc_Module', 'api_url', $_REQUEST['api_url']);
<?php
require_once('modules/Administration/Administration.php');
$administration = new Administration();
$administration->retrieveSettings();
$api_url = $administration->settings['abc_Module_api_url'];
<?php
require_once 'modules/Configurator/Configurator.php';
$configurator = new Configurator();
$configurator->loadConfig();
$configurator->config['abc_module_api_url'] = $_REQUEST['api_url'];
$configurator->saveConfig();
@eggsurplus
eggsurplus / manifest_acceptable.php
Created January 17, 2013 16:51
The acceptable option in a manifest.
'acceptable_sugar_flavors' => array(
'CE', 'PRO','ENT'
),
'acceptable_sugar_versions' => array(
'6.5.7',
'6.5.8',
'6.5.9'
),