# Config

{% hint style="warning" %}
**In order to make DND work you should check the following:**

* `articleExtractors` is configured
* `publisherId` is configured
* `PubStart, PubStop, WriterHasPublishedVersion` is configured in ocProperties config

*v4.3.0 (IMID)*

**Using proxy**

* Configure Writer to allow requests from Dashboard IP

**Using fetch**

* Configure Writer to allow Dashboard domain to do CORS requests
  {% endhint %}

### Configurations

Publication Planner needs to be configured with Content-Agent, ICP and Writer providers and endpoints.

* go to Plugins > Publication Planner > settings > Configurations
* add OpenContent ContentProvider name.
* add QueryStreamer ContentProvider name.
* and add your Publication Planner config inside the config editor.
* and then click save.

Publication Planner also needs to be configured with requirements in Mappings section

* go to Plugins > Publication Planner > settings > Mappings
* select all the required actions by selecting from the dropdown for each required action.

### Add filter query to your search request

**available with v3.0.0 or higher**

In your config you can add `filterQuery` to add custom filter to your searches

> example

```javascript
{
    ...,
    "filterQuery": "NOT WriterAuthors:\"John Doe\"",
    ...,
}
```

### Add slugline to Article cards

In your config object you can add your `Slug` OC-Property in `ocProperties` and map it in `articlePropertyMap` as a `Slugline`

> **example**

```javascript
{
    ...,
    "ocProperties": [
        "...",
        "Slug",
        "..."
    ],
    "articlePropertyMap": {
        "...": "...",
        "Slugline": "Slug",
        "...": "..."
    },
    ...,
}
```

> **results**

![publication-planner-slugline](https://camo.githubusercontent.com/f7ce2ae01112c31eeca5e15d18c8536dc52e8299/68747470733a2f2f73332d65752d776573742d312e616d617a6f6e6177732e636f6d2f64617368626f6172642d67726170686963732f7075626c69636174696f6e2d706c616e6e65722d736c75676c696e652e706e67)

### **Map hard coded fields to OC Property**

There are several hard coded fields on the cards.

![The card layout](https://lh4.googleusercontent.com/nPj1x-Wsnuv10IsbO3HPBzPCtlHt_BGTXLTpmpvdxPNKbXKEunIaCnl0OSECqPYfeVKw46O2DS3vnnWkCivoBL1sFAghpGAwLqPKj-_ERD5VSdgxFYGX6hBCvPifDqqms3JD4IBb)

They are mapped in “articlePropertMap”. **Don’t change property name on the left side.** On the right side your OC Property name is to be inserted with the property you want to visualise.&#x20;

![Configuration with OC Properties](https://lh3.googleusercontent.com/8eyOwmT5QXBVAkj0QicJr_99hmu_x32UlRp7LVt8_HVwgJGLEGe1XYpSs359ZsDbNx4ZQ8MbYf5xwcAqF1sY2-c8P0TCfPD_qD0KWJXXZUx_E1kLzBapvad873ER6WMFePd0cCFI)

### Above as configuration:&#x20;

```javascript
 "articlePropertyMap": {
                "Uuid": "uuid",
                "ImageURIs": "ArticleMetaImageUuids",
                "Status": "WriterPubStatus",
		"Premium": "ArticleMetaPremium",
                "NewsPrioLifetime": "ArticleMetaLifeTime",
                "NewsPrio": "ArticleMetaNewsValue",
                "Products": "ArticleMetaChannels",
                "Published": "WriterPubStart",
                "Headline": "Headline",
                "Channels": "ArticleMetaSections",
                "ContentProfiles": "ArticleMetaProfile",
                "Authors": "WriterAuthors",
                "HasPublishedVersion": "WriterHasPublishedVersion"
        },
```
