eplan/core/modules/modEplan.class.php
Eduard Wisch 3f36379265
Some checks failed
Deploy Eplan / deploy (push) Failing after 0s
feat: Dolibarr-Modul Eplan — Initial [deploy]
Verknüpfung zur ElektroPlan PWA (Raumaufmaß mit Bluetooth-Laser).
- Setup-Seite mit PWA-URL + großem Öffnen-Button
- Menü-Eintrag unter Werkzeuge
- Modul-Nr. 500037, Rechte: read + admin
- Lang: de_DE + en_US

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 18:23:46 +02:00

120 lines
3.8 KiB
PHP

<?php
/* Copyright (C) 2026 Eduard Wisch <data@data-it-solution.de>
* GPL v3+ — siehe COPYING
*/
/**
* \defgroup eplan Module Eplan
* \brief Verknüpfung zu ElektroPlan PWA — Raumaufmaß mit Bluetooth-Laser
* \file htdocs/eplan/core/modules/modEplan.class.php
*/
include_once DOL_DOCUMENT_ROOT.'/core/modules/DolibarrModules.class.php';
class modEplan extends DolibarrModules
{
public function __construct($db)
{
global $conf, $langs;
$this->db = $db;
$this->numero = 500037;
$this->rights_class = 'eplan';
$this->family = "other";
$this->module_position = '91';
$this->name = preg_replace('/^mod/i', '', get_class($this));
$this->description = "Verknüpfung zur ElektroPlan PWA — Raumaufmaß mit Bluetooth-Laser direkt aus Dolibarr.";
$this->descriptionlong = "Stellt einen Link zur ElektroPlan PWA im Admin-Menü bereit. Die PWA ermöglicht mobiles Raumaufmaß mit Finger-Skizze und Bosch GLM Bluetooth-Laser. Grundrisse können als PDF an Aufträge angehängt werden.";
$this->editor_name = 'Alles Watt läuft';
$this->editor_url = '';
$this->version = '1.0.0';
$this->const_name = 'MAIN_MODULE_'.strtoupper($this->name);
$this->picto = 'fa-drafting-compass';
$this->module_parts = array(
'triggers' => 0,
'login' => 0,
'substitutions' => 0,
'menus' => 0,
'tpl' => 0,
'barcode' => 0,
'models' => 0,
'printing' => 0,
'theme' => 0,
'css' => array(),
'js' => array(),
'hooks' => array(),
'moduleforexternal' => 0,
);
$this->dirs = array();
// Admin-Setup-Seite
$this->config_page_url = array("setup.php@eplan");
$this->hidden = false;
$this->depends = array();
$this->requiredby = array();
$this->conflictwith = array();
$this->langfiles = array("eplan@eplan");
$this->phpmin = array(7, 4);
$this->need_dolibarr_version = array(19, 0);
$this->need_javascript_ajax = 0;
// Konstanten
$this->const = array(
0 => array('EPLAN_PWA_URL', 'chaine', '', 'URL zur ElektroPlan PWA', 0, 'current', 0),
);
// Rechte
$this->rights = array();
$r = 0;
$this->rights[$r][0] = $this->numero + 0; // 500037
$this->rights[$r][1] = 'ElektroPlan PWA öffnen';
$this->rights[$r][2] = 'r';
$this->rights[$r][3] = 1;
$this->rights[$r][4] = 'read';
$r++;
$this->rights[$r][0] = $this->numero + 1; // 500038
$this->rights[$r][1] = 'ElektroPlan Einstellungen verwalten';
$this->rights[$r][2] = 'a';
$this->rights[$r][3] = 0;
$this->rights[$r][4] = 'admin';
$r++;
// Menü-Einträge
$this->menu = array();
$r = 0;
$this->menu[$r] = array(
'fk_menu' => 'fk_mainmenu=tools',
'type' => 'left',
'titre' => 'Eplan',
'prefix' => '<i class="fas fa-drafting-compass pictofixedwidth"></i>',
'mainmenu' => 'tools',
'leftmenu' => 'eplan',
'url' => '/custom/eplan/admin/setup.php',
'langs' => 'eplan@eplan',
'position' => 100,
'enabled' => 'isModEnabled("eplan")',
'perms' => '$user->hasRight("eplan","read")',
'target' => '',
'user' => 0,
);
$r++;
}
public function init($options = '')
{
$result = $this->_load_tables('/install/mysql/', 'eplan');
$result = $this->_init(array(), $options);
return $result;
}
public function remove($options = '')
{
return $this->_remove(array(), $options);
}
}