qbank_dam-8.x-1.4/qbank_dam.install
qbank_dam.install
<?php
use Drupal\Core\Database\Database;
use Drupal\Core\Link;
use Drupal\Core\Url;
use Drupal\Core\Render\Markup;
/**
* Add reqired database columns to tables.
*
*/
function qbank_dam_install(){
$schema = Database::getConnection()->schema();
$messenger = \Drupal::messenger();
if(!$schema->fieldExists('file_managed', 'qbank_origin_type')){
$schema->addField('file_managed', 'qbank_origin_type', ['type' => 'varchar','length' => 64,'not null' => TRUE, 'default' => '']);
}
if(!$schema->fieldExists('file_managed', 'qbank_origin_id')){
$schema->addField('file_managed', 'qbank_origin_id', ['type' => 'varchar','length' => 64,'not null' => TRUE, 'default' => '']);
}
$link = Link::fromTextAndUrl('Configure', Url::fromRoute('qbank_dam.qbank_dam_config_form'));
$messenger->addStatus(Markup::create('Please '. $link->toString().' to complete API connectivity'));
}
/**
* Remove module configurations on uninstall.
*/
function qbank_dam_uninstall(){
\Drupal::configFactory()->getEditable('core.entity_form_display.node.qbank_dam_demo_content.default')->delete();
\Drupal::configFactory()->getEditable('core.entity_view_display.node.qbank_dam_demo_content.default')->delete();
\Drupal::configFactory()->getEditable('core.entity_view_display.node.qbank_dam_demo_content.teaser')->delete();
\Drupal::configFactory()->getEditable('editor.editor.qbank_dam_format')->delete();
\Drupal::configFactory()->getEditable('entity_browser.browser.media_qbank')->delete();
\Drupal::configFactory()->getEditable('field.field.node.qbank_dam_demo_content.body')->delete();
\Drupal::configFactory()->getEditable('field.field.node.qbank_dam_demo_content.field_qbank_media')->delete();
\Drupal::configFactory()->getEditable('field.storage.node.field_qbank_media')->delete();
\Drupal::configFactory()->getEditable('filter.format.qbank_dam_format')->delete();
\Drupal::configFactory()->getEditable('node.type.qbank_dam_demo_content')->delete();
\Drupal::configFactory()->getEditable('qbank_dam.ckeditordialog')->delete();
\Drupal::configFactory()->getEditable('qbank_dam.qbankdamconfig')->delete();
\Drupal::logger('qbank_dam')->notice('QBank DAM configurations removed.');
}
/**
* Adding helper fields to handle usage system
*/
function qbank_dam_update_8001() {
qbank_dam_install();
}