Exemplo n.º 1
0
        <h1><?php 
echo XeditableWidget::widget(['type' => 'comname', 'model' => $artist, 'attribute' => 'original_name', 'addAttribute' => 'latin_name', 'displayValue' => $artist->getComname(), 'aClass' => 'artist-name']);
?>
</h1>

        <div class="form-group">
            <?php 
echo \app\components\TagsWidgetEditable::widget(['id' => 'artist-tags', 'owner' => $artist]);
?>
        </div>
    </div>

    <div class="col-md-4">
        <?php 
echo \app\components\GalleryWidget::widget(['isNew' => false, 'images' => $artist->getPhotos()->addOrderBy('is_main DESC')->all(), 'ownerClass' => 'Photo', 'ownerId' => $artist->id]);
?>
    </div>

    <div class="col-md-8">
        <p class="text-right">
            <a href="<?php 
echo Url::toRoute(['create', 'artistId' => $artist->id]);
?>
">
                <span class="glyphicon glyphicon-plus"></span> Add Release
            </a>
        </p>

        <?php 
echo ListView::widget(['dataProvider' => $dataProvider, 'itemView' => '_release']);
Exemplo n.º 2
0
}
?>

<div class="release-form">
    <div class="col-md-4">
        <?php 
echo GalleryWidget::widget(['isNew' => true, 'images' => $covers, 'ownerClass' => 'Cover']);
?>
    </div>

    <?php 
$form = ActiveForm::begin();
?>

    <?php 
GalleryWidget::printHiddenFields($covers);
?>

    <div class="col-md-8" style="margin-bottom: 20px;">
        <div class="form-group field-release-artist_id required">
            <?php 
echo Html::label('Artist Name', null, ['class' => 'control-label']);
?>
            <span id="add_name" style="color: grey; margin-left: 5px;"></span>
            <?php 
echo AutoComplete::widget(['name' => 'artist_name', 'id' => 'artist_name', 'clientOptions' => ['source' => new JsExpression("function(request, response) {\n                        \$.getJSON('" . Url::toRoute('artist/ajax-search', true) . "', {\n                            term: request.term\n                        }, response);\n                    }"), 'autoFill' => true, 'minLength' => '1', 'select' => new JsExpression("function(event, ui) {\n                        \$('#release-artist_id').val(ui.item.id);\n                        if (ui.item.add_name) \$('#add_name').text('(' + ui.item.add_name + ')');\n                     }"), 'search' => new JsExpression("function(event, ui) {\n                        \$('#add_name').text('');\n                        \$('#release-artist_id').val('');\n                    }"), 'response' => new JsExpression("function(event, ui) {\n                        if (ui.content.length > 0) {\n                            var value = \$('#artist_name').val().toLowerCase();\n                            var item = ui.content[0];\n                            var names = [item.original_name.toLowerCase()];\n                            if (item.latin_name) names.push(item.latin_name.toLowerCase());\n                            if (\$.inArray(value, names) > -1) \$('#release-artist_id').val(item.id);\n                            \$('.field-release-artist_id .info-block').text('');\n                        } else {\n                            \$('.field-release-artist_id .info-block').text('New Artist will be created.');\n                        }\n                    }")], 'options' => ['class' => 'form-control'], 'value' => $artist_name]);
$this->registerJs("\$('#{$form->options['id']}').yiiActiveForm('add', {\n                'id': 'artist_name',\n                'name': 'artist_name',\n                'container': '.field-release-artist_id',\n                'input': '#artist_name',\n                'validate': function(attribute, value, messages, deferred, \$form) {\n                    yii.validation.required(value, messages, {\n                        'message': 'Artist Name cannot be blank.'\n                    });\n                    yii.validation.string(value, messages, {\n                        'message': 'Artist Name must be a string.',\n                        'max': 255,\n                        'tooLong': 'Artist Name should contain at most 255 characters.',\n                        'skipOnEmpty': 1\n                    });\n                    value = yii.validation.trim(\$form, attribute, []);\n                }\n            })", View::POS_LOAD);
?>
            <div class="help-block"></div>
            <div class="info-block"></div>
            <?php 
Exemplo n.º 3
0
<div class="artist-form">

    <div class="row form-group">
        <div class="col-md-4">
            <?php 
echo GalleryWidget::widget(['isNew' => true, 'images' => $photos, 'ownerClass' => 'Photo']);
?>
        </div>

        <?php 
$form = ActiveForm::begin();
?>

        <?php 
GalleryWidget::printHiddenFields($photos);
?>

        <div class="col-md-8">
            <?php 
echo $form->field($model, 'original_name')->textInput(['maxlength' => true]);
?>

            <?php 
echo $form->field($model, 'latin_name')->textInput(['maxlength' => true]);
?>

            <div class="form-group">
                <label class="control-label" for="artist-tags">Tags</label>
                <?php 
echo TagsWidget::widget(['id' => 'artist-tags', 'name' => 'Artist[tags]', 'placeholder' => '']);
Exemplo n.º 4
0
            <span class="release-artist"><?php 
echo $model->artist->getComname();
?>
</span>
        </div>

        <div>
            <?php 
echo XeditableWidget::widget(['type' => 'comname', 'model' => $model, 'attribute' => 'original_name', 'addAttribute' => 'latin_name', 'displayValue' => $model->getComname(), 'aClass' => 'release-name']);
?>
        </div>
    </div>

    <div class="col-md-4">
        <?php 
echo \app\components\GalleryWidget::widget(['isNew' => false, 'images' => $model->getCovers()->addOrderBy('is_main DESC')->all(), 'ownerClass' => 'Cover', 'ownerId' => $model->id]);
?>
    </div>

    <div class="col-md-4">
        <div class="tracks"><?php 
foreach ($model->tracks as $track) {
    echoTrack($track);
}
?>
</div>

        <span class="btn btn-default btn-xs fileinput-button" style="margin-top: 10px;">
            <span class="glyphicon glyphicon-plus"></span> Add Tracks
            <?php 
echo FileUpload::widget(['name' => 'File[uploadedFiles][]', 'url' => ['file/upload', 'rid' => $model->id], 'options' => ['accept' => 'audio/*', 'multiple' => true], 'clientOptions' => ['maxFileSize' => 5000000, 'singleFileUploads' => false], 'clientEvents' => ['fileuploadstart' => "function (e) {\n                        \$('#progress-audio').removeClass('invisible');\n                    }", 'fileuploaddone' => "function(e, data) {\n                        \$('#progress-audio').addClass('invisible');\n                        \$('#progress-audio .bar').css('width', '0%');\n\n                        var trackTpl = Handlebars.compile(\$('#track-tpl').html());\n                        for (var i = 0; i < data.result.length; i++) {\n                            var item = data.result[i];\n                            \$('.tracks').append(trackTpl({\n                                id: item.track_id,\n                                comname: item.comname,\n                                number: item.number,\n                                url: item.url\n                            })).children().last().fadeIn();\n                        }\n                     }", 'fileuploadfail' => "function(e, data) {\n                        bootbox.alert('Error');\n                    }", 'fileuploadprogressall' => "function (e, data) {\n                        var progress = parseInt(data.loaded / data.total * 100, 10);\n                        \$('#progress-audio .bar').css('width', progress + '%');\n                    }"]]);