diff --git a/ChangeLog b/ChangeLog index 891b27ba78f..9982ac8e029 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,6 +8,7 @@ For Users: NEW: Stable module: Website NEW: Stable module: WebDAV NEW: Stable module: Module Builder +NEW: Stable module "Skype" has been replaced with module "Social Networks" to support more tools. NEW: Dolibarr can provide information in page title when multicompany is enabled of not, making Android application like DoliDroid able to provide native features for multicompany module. diff --git a/htdocs/admin/socialnetworks.php b/htdocs/admin/socialnetworks.php new file mode 100644 index 00000000000..9aba26b3fc4 --- /dev/null +++ b/htdocs/admin/socialnetworks.php @@ -0,0 +1,123 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \file htdocs/admin/socialnetworks.php + * \ingroup socialnetworks + * \brief Page to setup the module Social Networks + */ + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/mailmanspip.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; + +// Load translation files required by the page +$langs->loadLangs(array("admin", "errors")); + +if (! $user->admin) accessforbidden(); + +$type=array('yesno','texte','chaine'); + +$action = GETPOST('action','aZ09'); + + + +/* + * Actions + */ + +// Action activation d'un sous module du module adherent +if ($action == 'set') +{ + $result=dolibarr_set_const($db, $_GET["name"], $_GET["value"], '', 0, '', $conf->entity); + if ($result < 0) + { + dol_print_error($db); + } +} + +// Action desactivation d'un sous module du module adherent +if ($action == 'unset') +{ + $result=dolibarr_del_const($db, $_GET["name"], $conf->entity); + if ($result < 0) + { + dol_print_error($db); + } +} + + +/* + * View + */ + +$help_url=''; + +llxHeader('',$langs->trans("SocialNetworkSetup"),$help_url); + + +$linkback=''.$langs->trans("BackToModuleList").''; +print load_fiche_titre($langs->trans("SocialNetworkSetup"),$linkback,'title_setup'); + +//$head = socialnetworks_admin_prepare_head(); +$h=0; +$head = array(); +$head[$h][0] = DOL_URL_ROOT.'/admin/socialnetworks.php'; +$head[$h][1] = $langs->trans("Setup"); +$head[$h][2] = 'setup'; +$h++; + + +print '
'; + +dol_fiche_head($head, 'setup', '', 0, 'user'); + +print '
'; + +$arrayofsocialnetworks=array('skype'=>'Skype', 'twitter'=>'Twitter', 'facebook'=>'Facebook'); + +foreach($arrayofsocialnetworks as $snkey => $snlabel) +{ + $consttocheck = 'SOCIALNETWORKS_'.strtoupper($snkey); + if (! empty($conf->global->$consttocheck)) + { + //$link=img_picto($langs->trans("Active"),'tick').' '; + $link=''; + //$link.=$langs->trans("Disable"); + $link.=img_picto($langs->trans("Activated"),'switch_on'); + $link.=''; + } + else + { + $link=''; + //$link.=img_$langs->trans("Activate") + $link.=img_picto($langs->trans("Disabled"),'switch_off'); + $link.=''; + } + print $langs->trans('EnableFeatureFor', $snlabel).' '.$link.'

'; +} + + +dol_fiche_end(); + +print '
'; + + +// End of page +llxFooter(); +$db->close(); diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index ec06ec52289..01d73f6c04b 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1804,6 +1804,8 @@ HelpOnTooltip=Help text to show on tooltip HelpOnTooltipDesc=Put here a text or a translation key for a text to show on a tooltip when this field appears into a form YouCanDeleteFileOnServerWith=You can delete this file on server with Command Line:
%s ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s ##### Resource #### ResourceSetup=Configuration du module Resource UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index 427995254fc..ba01619bd50 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -145,7 +145,7 @@ if (empty($reshook)) $object->client = $object->client | $soc_origin->client; $object->fournisseur = $object->fournisseur | $soc_origin->fournisseur; $listofproperties=array( - 'address', 'zip', 'town', 'state_id', 'country_id', 'phone', 'phone_pro', 'fax', 'email', 'skype', 'url', 'barcode', + 'address', 'zip', 'town', 'state_id', 'country_id', 'phone', 'phone_pro', 'fax', 'email', 'skype', 'twitter', 'facebook', 'url', 'barcode', 'idprof1', 'idprof2', 'idprof3', 'idprof4', 'idprof5', 'idprof6', 'tva_intra', 'effectif_id', 'forme_juridique', 'remise_percent', 'remise_supplier_percent', 'mode_reglement_supplier_id', 'cond_reglement_supplier_id', 'name_bis', 'stcomm_id', 'outstanding_limit', 'price_level', 'parent', 'default_lang', 'ref', 'ref_ext', 'import_key', 'fk_incoterms', 'fk_multicurrency', @@ -405,6 +405,8 @@ if (empty($reshook)) $object->country_id = GETPOST('country_id', 'int'); $object->state_id = GETPOST('state_id', 'int'); $object->skype = GETPOST('skype', 'alpha'); + $object->twitter = GETPOST('twitter', 'alpha'); + $object->facebook = GETPOST('facebook', 'alpha'); $object->phone = GETPOST('phone', 'alpha'); $object->fax = GETPOST('fax','alpha'); $object->email = trim(GETPOST('email', 'custom', 0, FILTER_SANITIZE_EMAIL)); @@ -959,6 +961,8 @@ else $object->town = GETPOST('town', 'alpha'); $object->state_id = GETPOST('state_id', 'int'); $object->skype = GETPOST('skype', 'alpha'); + $object->twitter = GETPOST('twitter', 'alpha'); + $object->facebook = GETPOST('facebook', 'alpha'); $object->phone = GETPOST('phone', 'alpha'); $object->fax = GETPOST('fax', 'alpha'); $object->email = GETPOST('email', 'custom', 0, FILTER_SANITIZE_EMAIL); @@ -1246,11 +1250,26 @@ else print ''.fieldLabel('Web','url').''; print ''; - // Skype - if (! empty($conf->skype->enabled)) + if (! empty($conf->socialnetworks->enabled)) { - print ''.fieldLabel('Skype','skype').''; - print ''; + // Skype + if (! empty($conf->global->SOCIALNETWORKS_SKYPE)) + { + print ''.fieldLabel('Skype','skype').''; + print ''; + } + // Twitter + if (! empty($conf->global->SOCIALNETWORKS_TWITTER)) + { + print ''.fieldLabel('Twitter','twitter').''; + print ''; + } + // Facebook + if (! empty($conf->global->SOCIALNETWORKS_FACEBOOK)) + { + print ''.fieldLabel('Facebook','facebook').''; + print ''; + } } // Phone / Fax @@ -1538,6 +1557,8 @@ else $object->country_id = GETPOST('country_id')?GETPOST('country_id', 'int'):$mysoc->country_id; $object->state_id = GETPOST('state_id', 'int'); $object->skype = GETPOST('skype', 'alpha'); + $object->twitter = GETPOST('twitter', 'alpha'); + $object->facebook = GETPOST('facebook', 'alpha'); $object->phone = GETPOST('phone', 'alpha'); $object->fax = GETPOST('fax', 'alpha'); $object->email = GETPOST('email', 'custom', 0, FILTER_SANITIZE_EMAIL); @@ -1819,12 +1840,27 @@ else print ''.fieldLabel('Web','url').''; print ''; - // Skype - if (! empty($conf->skype->enabled)) - { - print ''.fieldLabel('Skype','skype').''; - print ''; - } + if (! empty($conf->socialnetworks->enabled)) + { + // Skype + if (! empty($conf->global->SOCIALNETWORKS_SKYPE)) + { + print ''.fieldLabel('Skype','skype').''; + print ''; + } + // Twitter + if (! empty($conf->global->SOCIALNETWORKS_TWITTER)) + { + print ''.fieldLabel('Twitter','twitter').''; + print ''; + } + // Facebook + if (! empty($conf->global->SOCIALNETWORKS_FACEBOOK)) + { + print ''.fieldLabel('Facebook','facebook').''; + print ''; + } + } // Phone / Fax print ''.fieldLabel('Phone','phone').'';