diff --git a/src/models/FeedModel.php b/src/models/FeedModel.php index 8754e630..d2300a67 100644 --- a/src/models/FeedModel.php +++ b/src/models/FeedModel.php @@ -3,6 +3,7 @@ namespace craft\feedme\models; use Cake\Utility\Hash; +use Craft; use craft\base\Model; use craft\feedme\base\Element; use craft\feedme\base\ElementInterface; @@ -51,6 +52,11 @@ public function __toString() return Craft::t('feed-me', $this->name); } + public function getFeedUrl(): string + { + return Craft::parseEnv($this->feedUrl); + } + public function getDuplicateHandleFriendly() { return DuplicateHelper::getFrieldly($this->duplicateHandle); diff --git a/src/services/DataTypes.php b/src/services/DataTypes.php index fd19d768..314c20ba 100644 --- a/src/services/DataTypes.php +++ b/src/services/DataTypes.php @@ -183,10 +183,10 @@ public function getRawData($url, $feedId = null) public function getFeedData($feedModel, $usePrimaryElement = true) { - $feedDataResponse = $feedModel->getDataType()->getFeed($feedModel->feedUrl, $feedModel, $usePrimaryElement); + $feedDataResponse = $feedModel->getDataType()->getFeed($feedModel->getFeedUrl(), $feedModel, $usePrimaryElement); $event = new FeedDataEvent([ - 'url' => $feedModel->feedUrl, + 'url' => $feedModel->getFeedUrl(), 'response' => $feedDataResponse, ]); diff --git a/src/templates/feeds/_edit.html b/src/templates/feeds/_edit.html index e831eb5d..9b45bcec 100644 --- a/src/templates/feeds/_edit.html +++ b/src/templates/feeds/_edit.html @@ -53,7 +53,7 @@ required: true, }) }} - {{ forms.textField({ + {{ forms.autosuggestField({ label: "Feed URL" | t('feed-me'), instructions: "Can be a file on the local file system or from a website url (http://...)." | t('feed-me'), id: 'feedUrl', @@ -61,6 +61,8 @@ value: feed.feedUrl, errors: feed.getErrors('feedUrl'), required: true, + suggestEnvVars: true, + suggestAliases: true, }) }} {{ forms.selectField({ diff --git a/src/templates/feeds/index.html b/src/templates/feeds/index.html index 958e5a13..e62eb0b4 100644 --- a/src/templates/feeds/index.html +++ b/src/templates/feeds/index.html @@ -37,16 +37,16 @@ {{ feed.name | t('feed-me') }} - {% if feed.feedUrl | length > 40 %} - {{ feed.feedUrl | slice(0, 40) }}… + {% if feed.getFeedUrl() | length > 40 %} + {{ feed.getFeedUrl() | slice(0, 40) }}… {% else %} - {{ feed.feedUrl }} + {{ feed.getFeedUrl() }} {% endif %} {{ feed.dataType.name ?? 'Unknown datatype' }} - + {% if feed.element %} {{ feed.element.name }} @@ -64,7 +64,7 @@ {{ feed.duplicateHandleFriendly }} - + {{ 'Run Feed' | t('feed-me') }}