Skip to content
This repository has been archived by the owner on Apr 5, 2018. It is now read-only.

Commit

Permalink
You can now choose if you want to validate your content
Browse files Browse the repository at this point in the history
  • Loading branch information
Bob Olde Hampsink committed Jun 1, 2015
1 parent 77a0da0 commit 724e15e
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 7 deletions.
7 changes: 5 additions & 2 deletions services/Import_CategoryService.php
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,11 @@ public function prepForElementModel(array &$fields, BaseElementModel $element)
*/
public function save(BaseElementModel &$element, $settings)
{
// Save category
return craft()->categories->saveCategory($element);
if ($settings->validate) {
return craft()->categories->saveCategory($element);
} else {
return craft()->elements->saveElement($element, false);
}
}

/**
Expand Down
11 changes: 9 additions & 2 deletions services/Import_EntryService.php
Original file line number Diff line number Diff line change
Expand Up @@ -233,8 +233,15 @@ public function prepForElementModel(array &$fields, BaseElementModel $element)
*/
public function save(BaseElementModel &$element, $settings)
{
// Save user
if (craft()->entries->saveEntry($element)) {
// Save element
if ($settings->validate) {
$result = craft()->entries->saveEntry($element);
} else {
$result = craft()->elements->saveElement($element, false);
}

// Save version
if ($result) {

// If entry revisions are supported
if (craft()->getEdition() == Craft::Pro) {
Expand Down
11 changes: 9 additions & 2 deletions services/Import_UserService.php
Original file line number Diff line number Diff line change
Expand Up @@ -189,8 +189,15 @@ public function prepForElementModel(array &$fields, BaseElementModel $element)
*/
public function save(BaseElementModel &$element, $settings)
{
// Save user
if (craft()->users->saveUser($element)) {
// Save element
if ($settings->validate) {
$result = craft()->users->saveUser($element);
} else {
$result = craft()->elements->saveElement($element, false);
}

// Save usergroup
if ($result) {

// Assign to groups
craft()->userGroups->assignUserToGroups($element->id, $settings['elementvars']['groups']);
Expand Down
3 changes: 2 additions & 1 deletion tasks/ImportTask.php
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,8 @@ protected function defineSettings()
'type' => AttributeType::String,
'elementvars' => array(AttributeType::Mixed, 'default' => array()),
'behavior' => array(AttributeType::Name, 'default' => ImportModel::BehaviorAppend),
'email' => AttributeType::Email,
'validate' => array(AttributeType::Bool, 'default' => true),
'email' => array(AttributeType::Bool, 'default' => false),
'backup' => array(AttributeType::Bool, 'default' => false),
'history' => AttributeType::Number,
);
Expand Down
20 changes: 20 additions & 0 deletions templates/index.twig
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,26 @@
</div>
</td>
</tr>
<tr class="importValidate">
<td>
<div class="field">
<div class="heading">
<label>{{ "Validate content"|t }}</label>
<div class="instructions">
<p>{{ "Enable field validation when importing."|t }}</p>
</div>
</div>
</div>
</td>
<td>
<div class="field">
<div class="input">
<input type="hidden" name="import[validate]" value="0">
<input type="checkbox" name="import[validate]" value="1" id="validate" checked />
</div>
</div>
</td>
</tr>
<tr class="importEmail">
<td>
<div class="field">
Expand Down

0 comments on commit 724e15e

Please sign in to comment.