Exemplo n.º 1
0
 * You can contact X2Engine, Inc. P.O. Box 66752, Scotts Valley,
 * California 95067, USA. or at email address contact@x2engine.com.
 * 
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU Affero General Public License version 3.
 * 
 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
 * these Appropriate Legal Notices must retain the display of the "Powered by
 * X2Engine" logo. If the display of the logo is not reasonably feasible for
 * technical reasons, the Appropriate Legal Notices must display the words
 * "Powered by X2Engine".
 *****************************************************************************************/
$staticLinkModel = Contacts::model();
$this->widget('InlineEmailForm', array('attributes' => array('subject' => $model->subject, 'message' => $model->content, 'modelName' => 'Contacts', 'modelId' => null, 'credId' => $model->sendAs), 'postReplace' => 1, 'skipEvent' => 1, 'template' => Fields::id($model->template), 'insertableAttributes' => array(), 'startHidden' => true, 'associationType' => 'Contacts', 'type' => 'testCampaignEmail', 'specialFields' => '<div class="row">' . CHtml::hiddenField('InlineEmail[campaignId]', $model->id) . CHtml::label(Yii::t('contacts', '{module}', array('{module}' => Modules::displayName(false, "Contacts"))), 'Contacts[name]', array('class' => 'x2-email-label')) . $this->widget('zii.widgets.jui.CJuiAutoComplete', array('model' => Contacts::model(), 'attribute' => 'name', 'source' => $linkSource = Yii::app()->controller->createUrl($staticLinkModel->autoCompleteSource), 'options' => array('minLength' => '1', 'select' => 'js:function( event, ui ) {
                            $("#InlineEmail_modelId").val(ui.item.id);
                            $(this).val(ui.item.value);
                            $(this).data ("prev-val", $(this).val ());
                            return false;
                        }', 'change' => 'js:function (evt, ui) {
                            if ($(this).data ("prev-val") !== $(this).val ()) {
                                $("#InlineEmail_modelId").val("");
                            }
                            $(this).data ("prev-val", $(this).val ());
                        }', 'create' => 'js:function(event, ui) {
                            $(this).data( "uiAutocomplete" )._renderItem = function(ul,item) {
                                $(ul).addClass ("test-email-contact-ai");
                                return $("<li>").data("item.autocomplete",item).append(x2.forms.renderContactLookup(item)).appendTo(ul);
                            };
                        }'), 'htmlOptions' => array('style' => 'max-width:200px;', 'name' => 'InlineEmail[recordName]')), true) . X2Html::hint2(Yii::t('marketing', 'The {contact} you enter here will be used for variable replacement, ' . 'i.e. for "John Doe" the token {firstName} will get replaced with ' . '"John"', array('{contact}' => Modules::displayName(false, "Contacts")))) . '</div>'));
Exemplo n.º 2
0
    ?>
    <?php 
    echo Yii::t('admin', 'Please click the button below to begin the export. Do not close this page until the export is finished, which may take some time if you have a large number of records. A counter will keep you updated on how many records have been successfully updated.');
    ?>
<br><br>
    <?php 
    echo isset($listName) ? Yii::t('admin', 'You are currently exporting: ') . "<b>{$listName}</b>" : '';
    ?>
    </div>
    <br>
    <div class="exportOption">
        <?php 
    if (Yii::app()->params->isAdmin) {
        echo CHtml::label(Yii::t('admin', 'Include Hidden Records?'), 'includeHidden');
        echo CHtml::checkbox('includeHidden', false);
        echo X2Html::hint2(Yii::t('admin', 'Include records that were hidden by the duplicate checker.'));
    }
    ?>
    </div>

    <div class="exportOption">
        <?php 
    echo CHtml::label(Yii::t('admin', 'Include Tags?'), 'includeTags');
    echo CHtml::checkbox('includeTags', false);
    ?>
    </div>

    <?php 
    echo CHtml::button(Yii::t('app', 'Export'), array('class' => 'x2-button', 'id' => 'export-button'));
    ?>
Exemplo n.º 3
0
 public function paramRules()
 {
     $parentRules = parent::paramRules();
     $parentRules['options'] = array_merge($parentRules['options'], array(array('name' => 'to', 'label' => Yii::t('studio', 'To:'), 'type' => 'email'), array('name' => 'template', 'label' => Yii::t('studio', 'Template'), 'type' => 'dropdown', 'defaultVal' => '', 'options' => array('' => Yii::t('studio', 'Custom')) + Docs::getEmailTemplates('email', 'Contacts')), array('name' => 'subject', 'label' => Yii::t('studio', 'Subject'), 'optional' => 1), array('name' => 'cc', 'label' => Yii::t('studio', 'CC:'), 'optional' => 1, 'type' => 'email'), array('name' => 'bcc', 'label' => Yii::t('studio', 'BCC:'), 'optional' => 1, 'type' => 'email'), array('name' => 'logEmail', 'label' => Yii::t('studio', 'Log email?') . '&nbsp;' . X2Html::hint2(Yii::t('studio', 'Checking this box will cause the email to be attached ' . 'to the record associated with this flow, if it exists.')), 'optional' => 1, 'defaultVal' => 1, 'type' => 'boolean'), array('name' => 'body', 'label' => Yii::t('studio', 'Message'), 'optional' => 1, 'type' => 'richtext')));
     return $parentRules;
 }
Exemplo n.º 4
0
 * You can contact X2Engine, Inc. P.O. Box 66752, Scotts Valley,
 * California 95067, USA. or at email address contact@x2engine.com.
 * 
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU Affero General Public License version 3.
 * 
 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
 * these Appropriate Legal Notices must retain the display of the "Powered by
 * X2Engine" logo. If the display of the logo is not reasonably feasible for
 * technical reasons, the Appropriate Legal Notices must display the words
 * "Powered by X2Engine".
 *****************************************************************************************/
$templateRec = Yii::app()->db->createCommand()->select('nameId,name')->from('x2_docs')->where("type='quote'")->queryAll();
$templates = array();
$templates[null] = '(none)';
foreach ($templateRec as $tmplRec) {
    $templates[$tmplRec['nameId']] = $tmplRec['name'];
}
echo '<div style="display:inline-block; margin: 8px 11px;" ' . 'id="quote-template-dropdown">';
echo '<strong>' . $form->label($model, 'template') . '</strong>&nbsp;';
echo $form->dropDownList($model, 'template', $templates) . '&nbsp;' . X2Html::hint2(Yii::t('quotes', 'To create a template for {quotes} and invoices, go to the {docs} module and select ' . '"Create {quote}".', array('{quotes}' => lcfirst(Modules::displayName()), '{quote}' => Modules::displayName(false), '{docs}' => Modules::displayName(true, "Docs"))));
echo '</div><br />';
echo '	<div class="row buttons" style="padding-left:0;">' . "\n";
echo $quick ? CHtml::button(Yii::t('app', 'Cancel'), array('class' => 'x2-button right', 'id' => 'quote-cancel-button', 'tabindex' => 24)) . "\n" : '';
echo CHtml::submitButton(Yii::t('app', $action), array('class' => 'x2-button' . ($quick ? ' highlight' : ''), 'id' => 'quote-save-button', 'tabindex' => 25, 'onClick' => 'return x2.quoteslineItems.validateAllInputs ();')) . "\n";
echo "\t</div>\n";
echo '<div id="quotes-errors"></div>';
?>

Exemplo n.º 5
0
}
echo CHtml::beginForm($action);
?>

<!-- Credentials metadata -->
<?php 
echo $includeTitle ? $model->pageTitle . '<hr />' : '';
// Model class hidden field, so that it saves properly:
echo CHtml::activeHiddenField($model, 'modelClass');
if (!$disableMetaDataForm) {
    echo CHtml::activeLabel($model, 'name');
    echo CHtml::error($model, 'name');
    echo CHtml::activeTextField($model, 'name');
    echo CHtml::activeLabel($model, 'private');
    echo CHtml::activeCheckbox($model, 'private', array('value' => 1));
    echo X2Html::hint2(Yii::t('app', 'If you disable this option, administrators and users granted privilege to do so will be able to use these credentials on your behalf.'));
    if ($model->isNewRecord) {
        if (Yii::app()->user->checkAccess('CredentialsAdmin')) {
            $users = array($user->id => Yii::t('app', 'You'));
            $users[Credentials::SYS_ID] = 'System';
            echo CHtml::activeLabel($model, 'userId');
            echo CHtml::activeDropDownList($model, 'userId', $users, array('selected' => Credentials::SYS_ID));
        } else {
            echo CHtml::activeHiddenField($model, 'userId', array('value' => $user->id));
        }
    }
}
?>
	
<!-- Credentials details (embedded model) -->
<?php 
Exemplo n.º 6
0
$form = $this->beginWidget('X2ActiveForm', array('id' => 'settings-form', 'enableAjaxValidation' => false));
echo $form->errorSummary($model);
?>

<div id="profile-settings" class="form">
    <?php 
echo X2Html::getFlashes();
?>
    <div class="row">
        <div class="cell">
            <?php 
echo $form->checkBox($model, 'disablePhoneLinks', array('onchange' => 'js:x2.profileSettings.highlightSave();'));
?>
            <?php 
echo $form->labelEx($model, 'disablePhoneLinks', array('style' => 'display:inline;'));
echo X2Html::hint2(Yii::t('app', 'Prevent phone number fields from being formatted as links.'));
?>
        </div>
    </div>
    <?php 
if (Yii::app()->contEd('pro')) {
    ?>
    <div class="row"> 
        <div class="cell">
            <?php 
    echo $form->checkBox($model, 'disableTimeInTitle', array('onchange' => 'js:x2.profileSettings.highlightSave();'));
    ?>
            <?php 
    echo $form->labelEx($model, 'disableTimeInTitle', array('style' => 'display:inline;'));
    ?>
        </div>
Exemplo n.º 7
0
echo $form->checkBox($model, 'userActionBackdating');
?>
        <br><br>
        <?php 
echo $form->label($model, 'disableAutomaticRecordTagging', array('class' => 'left-label'));
echo X2Html::hint2(Yii::t('admin', 'Enabling action backdating will allow any user to change the automatically set date fields (i.e. create date). While this setting is off, only those with Admin access to the Actions module will be allowed to backdate actions.'));
echo X2Html::clearfix();
echo $form->checkBox($model, 'disableAutomaticRecordTagging');
?>
    </div>
    <div class="form">
        <label class='left-label' for="Admin_historyPrivacy"><?php 
echo Yii::t('admin', 'Event/Action History Privacy');
?>
</label><?php 
echo X2Html::hint2(Yii::t('admin', 'Default will allow users to see actions/events which are public or assigned to them. User Only will allow users to only see actions/events assigned to them. Group Only will allow users to see actions/events assigned to members of their groups.'));
echo X2Html::clearfix();
echo $form->dropDownList($model, 'historyPrivacy', array('default' => Yii::t('admin', 'Default'), 'user' => Yii::t('admin', 'User Only'), 'group' => Yii::t('admin', 'Group Only')));
?>
        <br><br>
        <?php 
echo Yii::t('admin', 'Choose a privacy setting for the Action History widget and Activity Feed. Please note that any user with Admin level access to the module that the History is on will ignore this setting. Only users with full Admin access will ignore this setting on the Activity Feed.');
?>
    </div>
    <div class="form">
        <?php 
echo $form->labelEx($model, 'properCaseNames');
?>
        <?php 
echo Yii::t('admin', 'Attempt to format Contact names to have proper case?');
?>
Exemplo n.º 8
0
?>
<div class='integration-description'>
<?php 
echo Yii::t('app', 'Activating Google Integration enables the following features:');
echo X2Html::unorderedList(array(CHtml::encode(Yii::t('app', 'Google sign in')), CHtml::encode(Yii::t('app', 'Google Calendar sync')), CHtml::encode(Yii::t('app', 'Google Drive access'))));
?>
</div>
<?php 
echo CHtml::tag('h3', array(), Yii::t('app', 'Configuring Google Integration'));
?>
<hr>
<?php 
echo X2Html::orderedList(array(Yii::t('app', 'Visit {link} and create or select a Google project.', array('{link}' => '<a href="https://console.developers.google.com/">' . 'https://console.developers.google.com</a>')), CHtml::encode(Yii::t('app', 'To configure Google integration for Calendar sync, Google login, and ' . 'Google Drive access:')) . X2Html::orderedList(array(CHtml::encode(Yii::t('app', 'From the "APIs & auth" section in the left sidebar, select "APIs."')), CHtml::encode(Yii::t('app', 'Search for and enable the Calendar and Drive APIs.')), CHtml::encode(Yii::t('app', 'From the "APIs & auth" section in the left sidebar, select ' . '"Credentials."')), CHtml::encode(Yii::t('app', 'Create an OAuth 2.0 client ID.')), CHtml::encode(Yii::t('app', 'When asked for "Authorized Redirect URIs," input the following ' . 'urls:')) . CHtml::tag('textarea', array('readonly' => 'readonly', 'class' => 'authorized-js-origins'), (@$_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . Yii::app()->controller->createUrl('/calendar/calendar/syncActionsToGoogleCalendar') . "\n" . (@$_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . Yii::app()->controller->createUrl('/site/googleLogin') . "\n" . (@$_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . Yii::app()->controller->createUrl('/site/upload')), CHtml::encode(Yii::t('app', 'When asked for "Authorized JavaScript Origins," input the ' . 'following urls:')) . CHtml::tag('textarea', array('readonly' => 'readonly'), (@$_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://') . $_SERVER['HTTP_HOST']), Yii::t('app', 'Copy the Client ID and Client Secret into OAuth 2.0 Credentials ' . 'section {below}.', array('{below}' => CHtml::link(Yii::t('app', 'below'), '#oauth-2.0')))), array('style' => 'list-style-type: lower-latin;'))), array('class' => 'config-instructions'));
echo X2Html::fragmentTarget('oauth-2.0');
echo CHtml::tag('h3', array('class' => 'oauth-header'), Yii::t('app', 'OAuth 2.0 Credentials'));
echo X2Html::hint2(Yii::t('app', 'Needed for Google Calendar sync, Google login, and Google Drive access.'));
echo '<hr />';
echo CHtml::activeLabel($model, 'clientId');
$model->renderProtectedInput('clientId');
echo CHtml::activeLabel($model, 'clientSecret');
$model->renderProtectedInput('clientSecret');
echo CHtml::tag('h3', array(), Yii::t('app', 'Google Analytics Integration'));
echo '<hr />';
echo CHtml::activeLabel($admin, 'gaTracking_public');
echo CHtml::activeTextField($admin, 'gaTracking_public');
echo CHtml::activeLabel($admin, 'gaTracking_internal');
echo CHtml::activeTextField($admin, 'gaTracking_internal');
echo '<br>';
echo Yii::t('admin', 'Enter property IDs to enable Google Analytics tracking. The public ID will be used on publicly-accessible web lead and service case forms. The internal one will be used within X2CRM, for tracking the activity of authenticated users.');
echo CHtml::errorSummary($model);
echo '<br>';
Exemplo n.º 9
0
        <div class="cell">
            <?php 
echo $form->checkBox($model, 'disablePhoneLinks', array('onchange' => 'js:x2.profileSettings.highlightSave();'));
?>
            <?php 
echo $form->labelEx($model, 'disablePhoneLinks', array('style' => 'display:inline;'));
echo X2Html::hint2(Yii::t('app', 'Prevent phone number fields from being formatted as links.'));
?>
        </div>
    </div>
    <div class="row">
        <div class="cell">
            <?php 
echo $form->checkBox($model, 'disableAutomaticRecordTagging', array('onchange' => 'js:x2.profileSettings.highlightSave();'));
echo '&nbsp;' . $form->labelEx($model, 'disableAutomaticRecordTagging', array('style' => 'display:inline;'));
echo X2Html::hint2(Yii::t('app', 'Prevent tags from being automatically generated when hashtags are detected in record fields.'));
?>
        </div>
    </div>
    <?php 
if (Yii::app()->contEd('pro')) {
    ?>
    <div class="row"> 
        <div class="cell">
            <?php 
    echo $form->checkBox($model, 'disableTimeInTitle', array('onchange' => 'js:x2.profileSettings.highlightSave();'));
    ?>
            <?php 
    echo $form->labelEx($model, 'disableTimeInTitle', array('style' => 'display:inline;'));
    ?>
        </div>
Exemplo n.º 10
0
 public function paramRules()
 {
     return array_merge(parent::paramRules(), array('title' => $this->title, 'modelClass' => 'modelClass', 'options' => array(array('name' => 'attributes'), array('name' => 'modelClass', 'label' => Yii::t('studio', 'Record Type'), 'type' => 'dropdown', 'options' => X2Flow::getModelTypes(true)), array('name' => 'createRelationship', 'label' => Yii::t('studio', 'Create Relationship') . '&nbsp;' . X2Html::hint2(Yii::t('app', 'Check this box if you want a new relationship to be ' . 'established between the record created by this action and the ' . 'record that triggered the flow.')), 'type' => 'boolean', 'defaultVal' => false))));
 }
Exemplo n.º 11
0
echo Yii::t('admin', 'Upload Your Logo');
?>
</h2></div>
<div id='upload-logo-form-container' class="form">
<?php 
echo Yii::t('admin', 'To upload your logo for display on the top menu bar or login screen, please upload the files here using the form below.');
$this->beginWidget('CActiveForm', array('htmlOptions' => array('enctype' => 'multipart/form-data')));
echo X2Html::getFlashes();
echo CHtml::errorSummary($formModel);
?>
<br>
<h3><?php 
echo Yii::t('contacts', 'Top Menu Bar Logo');
?>
</h3>
<?php 
echo X2Html::hint2(Yii::t('admin', 'The expected height of this image is 30 pixels'), array());
echo '<br>';
echo CHtml::activeFileField($formModel, 'menuLogoUpload');
echo CHtml::link(Yii::t('admin', 'Restore Default Logo'), array('/admin/toggleDefaultLogo?logoType=logo'), array('class' => 'x2-button'));
echo CHtml::error($formModel, 'menuLogoUpload');
?>
<br>
<?php 
echo '<br>';
echo CHtml::submitButton(Yii::t('app', 'Submit'), array('class' => 'x2-button'));
$this->endWidget();
?>
 
</div>