mirror of
https://github.com/fergalmoran/dss.git
synced 2026-02-17 21:47:31 +00:00
Fixed follow link in UserDetailView
This commit is contained in:
@@ -1,140 +1,137 @@
|
||||
// Generated by CoffeeScript 1.4.0
|
||||
(function() {
|
||||
|
||||
define(['backbone', 'marionette', 'vent', 'utils', 'app.lib/social', 'app.lib/router', 'app.lib/panningRegion', 'app.lib/realtimeController', 'app.lib/audioController', 'models/user/userItem', 'models/mix/mixCollection', 'views/widgets/headerView', 'views/sidebar/sidebarView'], function(Backbone, Marionette, vent, utils, social, DssRouter, PanningRegion, RealtimeController, AudioController, UserItem, MixCollection, HeaderView, SidebarView) {
|
||||
var App, sidebarView;
|
||||
App = new Marionette.Application();
|
||||
App.audioController = new AudioController();
|
||||
App.realtimeController = new RealtimeController();
|
||||
App.realtimeController.startSocketIO();
|
||||
App.vent.on("routing:started", function() {
|
||||
var enablePushState, pushState;
|
||||
console.log("App(vent): routing:started");
|
||||
enablePushState = true;
|
||||
pushState = !!(enablePushState && window.history && window.history.pushState);
|
||||
Backbone.history.start({
|
||||
pushState: pushState,
|
||||
hashChange: true
|
||||
});
|
||||
return true;
|
||||
define(['backbone', 'marionette', 'vent', 'utils', 'app.lib/social', 'app.lib/router', 'app.lib/panningRegion', 'app.lib/realtimeController', 'app.lib/audioController', 'models/user/userItem', 'models/mix/mixCollection', 'views/widgets/headerView', 'views/sidebar/sidebarView'], function(Backbone, Marionette, vent, utils, social, DssRouter, PanningRegion, RealtimeController, AudioController, UserItem, MixCollection, HeaderView, SidebarView) {
|
||||
var App, sidebarView;
|
||||
App = new Marionette.Application();
|
||||
App.audioController = new AudioController();
|
||||
App.realtimeController = new RealtimeController();
|
||||
App.realtimeController.startSocketIO();
|
||||
App.vent.on("routing:started", function() {
|
||||
var enablePushState, pushState;
|
||||
console.log("App(vent): routing:started");
|
||||
enablePushState = true;
|
||||
pushState = !!(enablePushState && window.history && window.history.pushState);
|
||||
Backbone.history.start({
|
||||
pushState: pushState,
|
||||
hashChange: true
|
||||
});
|
||||
App.addRegions({
|
||||
headerRegion: "#header",
|
||||
contentRegion: {
|
||||
selector: "#content"
|
||||
},
|
||||
footerRegion: "#footer",
|
||||
sidebarRegion: "#sidebar"
|
||||
});
|
||||
App.addInitializer(function() {
|
||||
console.log("App: routing starting");
|
||||
App.Router = new DssRouter();
|
||||
return App.vent.trigger("routing:started");
|
||||
});
|
||||
App.addInitializer(function() {
|
||||
$(document).on("click", "a[href]:not([data-bypass])", function(evt) {
|
||||
var href, root;
|
||||
href = {
|
||||
prop: $(this).prop("href"),
|
||||
attr: $(this).attr("href")
|
||||
};
|
||||
root = location.protocol + "//" + location.host + (App.root || '/');
|
||||
if (href.prop.slice(0, root.length) === root) {
|
||||
evt.preventDefault();
|
||||
App.Router.navigate(href.attr, true);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
return true;
|
||||
});
|
||||
App.addInitializer(function() {
|
||||
this.listenTo(vent, "app:login", function() {
|
||||
utils.modal("/dlg/LoginView");
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "app:donate", function() {
|
||||
console.log("App: donate");
|
||||
utils.modal("/dlg/Donate");
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "mix:favourite", function(model) {
|
||||
console.log("App(vent): mix:favourite");
|
||||
model.save('favourited', !model.get('favourited'), {
|
||||
patch: true
|
||||
});
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "mix:like", function(model, id, success, favourite) {
|
||||
console.log("App(vent): mix:like");
|
||||
model.save('liked', !model.get('liked'), {
|
||||
patch: true
|
||||
});
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "mix:delete", function(model) {
|
||||
console.log("App(vent): mix:like");
|
||||
return utils.messageBox("/dlg/DeleteMixConfirm", {
|
||||
yes: function() {
|
||||
console.log("Controller: mixDeleteYES!!");
|
||||
mix.destroy();
|
||||
return Backbone.history.navigate("/", {
|
||||
trigger: true
|
||||
});
|
||||
},
|
||||
no: function() {
|
||||
return console.log("Controller: mixDeleteNO!!");
|
||||
}
|
||||
});
|
||||
});
|
||||
this.listenTo(vent, "user:follow", function(model) {
|
||||
var target, user,
|
||||
_this = this;
|
||||
console.log("App(vent): user:follow");
|
||||
user = new UserItem({
|
||||
id: com.podnoms.settings.currentUser
|
||||
});
|
||||
target = com.podnoms.settings.urlRoot + "user/" + model.get("id") + "/";
|
||||
user.fetch({
|
||||
success: function() {
|
||||
var f, newFollowers;
|
||||
if (!model.get("is_following")) {
|
||||
newFollowers = user.get("following").concat([target]);
|
||||
user.save({
|
||||
"following": newFollowers,
|
||||
"is_following": true,
|
||||
patch: true
|
||||
});
|
||||
model.set("is_following", true);
|
||||
} else {
|
||||
f = user.get("following");
|
||||
f.splice(f.indexOf(target), 1);
|
||||
user.save({
|
||||
"following": f,
|
||||
"is_following": false,
|
||||
patch: true
|
||||
});
|
||||
model.set("is_following", false);
|
||||
}
|
||||
}
|
||||
});
|
||||
return true;
|
||||
});
|
||||
return this.listenTo(vent, "mix:share", function(mode, model) {
|
||||
console.log("App(vent): mix:share (" + mode + ")");
|
||||
if (mode === "facebook") {
|
||||
social.sharePageToFacebook(model);
|
||||
} else if (mode === "twitter") {
|
||||
social.sharePageToTwitter(model);
|
||||
} else if (mode === "embed") {
|
||||
social.generateEmbedCode(model);
|
||||
}
|
||||
return true;
|
||||
});
|
||||
});
|
||||
App.headerRegion.show(new HeaderView());
|
||||
sidebarView = new SidebarView();
|
||||
App.sidebarRegion.show(sidebarView);
|
||||
return App;
|
||||
return true;
|
||||
});
|
||||
|
||||
}).call(this);
|
||||
App.addRegions({
|
||||
headerRegion: "#header",
|
||||
contentRegion: {
|
||||
selector: "#content"
|
||||
},
|
||||
footerRegion: "#footer",
|
||||
sidebarRegion: "#sidebar"
|
||||
});
|
||||
App.addInitializer(function() {
|
||||
console.log("App: routing starting");
|
||||
App.Router = new DssRouter();
|
||||
return App.vent.trigger("routing:started");
|
||||
});
|
||||
App.addInitializer(function() {
|
||||
$(document).on("click", "a[href]:not([data-bypass])", function(evt) {
|
||||
var href, root;
|
||||
href = {
|
||||
prop: $(this).prop("href"),
|
||||
attr: $(this).attr("href")
|
||||
};
|
||||
root = location.protocol + "//" + location.host + (App.root || '/');
|
||||
if (href.prop.slice(0, root.length) === root) {
|
||||
evt.preventDefault();
|
||||
App.Router.navigate(href.attr, true);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
return true;
|
||||
});
|
||||
App.addInitializer(function() {
|
||||
this.listenTo(vent, "app:login", function() {
|
||||
utils.modal("/dlg/LoginView");
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "app:donate", function() {
|
||||
console.log("App: donate");
|
||||
utils.modal("/dlg/Donate");
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "mix:favourite", function(model) {
|
||||
console.log("App(vent): mix:favourite");
|
||||
model.save('favourited', !model.get('favourited'), {
|
||||
patch: true
|
||||
});
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "mix:like", function(model, id, success, favourite) {
|
||||
console.log("App(vent): mix:like");
|
||||
model.save('liked', !model.get('liked'), {
|
||||
patch: true
|
||||
});
|
||||
return true;
|
||||
});
|
||||
this.listenTo(vent, "mix:delete", function(model) {
|
||||
console.log("App(vent): mix:like");
|
||||
return utils.messageBox("/dlg/DeleteMixConfirm", {
|
||||
yes: function() {
|
||||
console.log("Controller: mixDeleteYES!!");
|
||||
mix.destroy();
|
||||
return Backbone.history.navigate("/", {
|
||||
trigger: true
|
||||
});
|
||||
},
|
||||
no: function() {
|
||||
return console.log("Controller: mixDeleteNO!!");
|
||||
}
|
||||
});
|
||||
});
|
||||
this.listenTo(vent, "user:follow", function(model) {
|
||||
var target, user,
|
||||
_this = this;
|
||||
console.log("App(vent): user:follow");
|
||||
user = new UserItem({
|
||||
id: com.podnoms.settings.currentUser
|
||||
});
|
||||
target = com.podnoms.settings.urlRoot + "user/" + model.get("id") + "/";
|
||||
user.fetch({
|
||||
success: function() {
|
||||
var f, newFollowers;
|
||||
if (!model.get("is_following")) {
|
||||
newFollowers = user.get("following").concat([target]);
|
||||
user.save({
|
||||
"following": newFollowers,
|
||||
"is_following": true,
|
||||
patch: true
|
||||
});
|
||||
model.set("is_following", true);
|
||||
} else {
|
||||
f = user.get("following");
|
||||
f.splice(f.indexOf(target), 1);
|
||||
user.save({
|
||||
"following": f,
|
||||
"is_following": false,
|
||||
patch: true
|
||||
});
|
||||
model.set("is_following", false);
|
||||
}
|
||||
}
|
||||
});
|
||||
return true;
|
||||
});
|
||||
return this.listenTo(vent, "mix:share", function(mode, model) {
|
||||
console.log("App(vent): mix:share (" + mode + ")");
|
||||
if (mode === "facebook") {
|
||||
social.sharePageToFacebook(model);
|
||||
} else if (mode === "twitter") {
|
||||
social.sharePageToTwitter(model);
|
||||
} else if (mode === "embed") {
|
||||
social.generateEmbedCode(model);
|
||||
}
|
||||
return true;
|
||||
});
|
||||
});
|
||||
App.headerRegion.show(new HeaderView());
|
||||
sidebarView = new SidebarView();
|
||||
App.sidebarRegion.show(sidebarView);
|
||||
return App;
|
||||
});
|
||||
|
||||
@@ -1,41 +1,38 @@
|
||||
// Generated by CoffeeScript 1.4.0
|
||||
(function() {
|
||||
var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
||||
__hasProp = {}.hasOwnProperty,
|
||||
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
||||
var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
||||
__hasProp = {}.hasOwnProperty,
|
||||
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
||||
|
||||
define(['app', 'moment', 'app.lib/dssView', 'vent', 'text!/tpl/UserListItemView'], function(App, moment, DssView, vent, Template) {
|
||||
var UserItemView;
|
||||
UserItemView = (function(_super) {
|
||||
define(['app', 'moment', 'app.lib/dssView', 'vent', 'text!/tpl/UserListItemView'], function(App, moment, DssView, vent, Template) {
|
||||
var UserItemView;
|
||||
UserItemView = (function(_super) {
|
||||
|
||||
__extends(UserItemView, _super);
|
||||
__extends(UserItemView, _super);
|
||||
|
||||
function UserItemView() {
|
||||
this.initialize = __bind(this.initialize, this);
|
||||
return UserItemView.__super__.constructor.apply(this, arguments);
|
||||
function UserItemView() {
|
||||
this.initialize = __bind(this.initialize, this);
|
||||
return UserItemView.__super__.constructor.apply(this, arguments);
|
||||
}
|
||||
|
||||
UserItemView.prototype.template = _.template(Template);
|
||||
|
||||
UserItemView.prototype.className = "row";
|
||||
|
||||
UserItemView.prototype.events = {
|
||||
"click #follow-button": function() {
|
||||
return vent.trigger("user:follow", this.model);
|
||||
},
|
||||
"click #follow-button-login": function() {
|
||||
return vent.trigger("app:login", this.model);
|
||||
}
|
||||
};
|
||||
|
||||
UserItemView.prototype.template = _.template(Template);
|
||||
UserItemView.prototype.initialize = function() {
|
||||
return this.listenTo(this.model, 'change:is_following', this.render);
|
||||
};
|
||||
|
||||
UserItemView.prototype.className = "row";
|
||||
|
||||
UserItemView.prototype.events = {
|
||||
"click #follow-button": function() {
|
||||
return vent.trigger("user:follow", this.model);
|
||||
},
|
||||
"click #follow-button-login": function() {
|
||||
return vent.trigger("app:login", this.model);
|
||||
}
|
||||
};
|
||||
|
||||
UserItemView.prototype.initialize = function() {
|
||||
return this.listenTo(this.model, 'change:is_following', this.render);
|
||||
};
|
||||
|
||||
return UserItemView;
|
||||
|
||||
})(DssView);
|
||||
return UserItemView;
|
||||
});
|
||||
|
||||
}).call(this);
|
||||
})(DssView);
|
||||
return UserItemView;
|
||||
});
|
||||
|
||||
@@ -19,7 +19,6 @@ define ['jquery', 'marionette', 'models/user/userCollection', 'views/user/userIt
|
||||
return
|
||||
|
||||
_fetchCollection: (options) =>
|
||||
debugger
|
||||
@collection.fetch(
|
||||
data: options
|
||||
success: =>
|
||||
|
||||
@@ -41,7 +41,6 @@ define(['jquery', 'marionette', 'models/user/userCollection', 'views/user/userIt
|
||||
};
|
||||
|
||||
UserListView.prototype._fetchCollection = function(options) {
|
||||
debugger;
|
||||
var _this = this;
|
||||
return this.collection.fetch({
|
||||
data: options,
|
||||
|
||||
@@ -4,6 +4,13 @@ define ['app', 'utils', 'moment', 'marionette', 'vent', 'app.lib/editableView',
|
||||
class UserProfileView extends EditableView
|
||||
template: _.template(Template)
|
||||
|
||||
events:
|
||||
"click #follow-button": -> vent.trigger("user:follow", @model)
|
||||
"click #follow-button-login": -> vent.trigger("app:login", @model)
|
||||
|
||||
initialize: =>
|
||||
@listenTo(@model, 'change:is_following', @render)
|
||||
|
||||
templateHelpers:
|
||||
humanise: (date)->
|
||||
moment(date).fromNow()
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// Generated by CoffeeScript 1.4.0
|
||||
var __hasProp = {}.hasOwnProperty,
|
||||
var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
||||
__hasProp = {}.hasOwnProperty,
|
||||
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
||||
|
||||
define(['app', 'utils', 'moment', 'marionette', 'vent', 'app.lib/editableView', 'models/user/userItem', 'text!/tpl/UserProfileView', 'ace-editable', 'wysiwyg'], function(App, utils, moment, Marionette, vent, EditableView, UserItem, Template) {
|
||||
@@ -9,11 +10,25 @@ define(['app', 'utils', 'moment', 'marionette', 'vent', 'app.lib/editableView',
|
||||
__extends(UserProfileView, _super);
|
||||
|
||||
function UserProfileView() {
|
||||
this.initialize = __bind(this.initialize, this);
|
||||
return UserProfileView.__super__.constructor.apply(this, arguments);
|
||||
}
|
||||
|
||||
UserProfileView.prototype.template = _.template(Template);
|
||||
|
||||
UserProfileView.prototype.events = {
|
||||
"click #follow-button": function() {
|
||||
return vent.trigger("user:follow", this.model);
|
||||
},
|
||||
"click #follow-button-login": function() {
|
||||
return vent.trigger("app:login", this.model);
|
||||
}
|
||||
};
|
||||
|
||||
UserProfileView.prototype.initialize = function() {
|
||||
return this.listenTo(this.model, 'change:is_following', this.render);
|
||||
};
|
||||
|
||||
UserProfileView.prototype.templateHelpers = {
|
||||
humanise: function(date) {
|
||||
return moment(date).fromNow();
|
||||
|
||||
@@ -107,4 +107,4 @@
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<div class="hr hr-18 dotted hr-double"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
<div>
|
||||
<span class="profile-picture">
|
||||
<img id="avatar"
|
||||
class="editable img-responsive image-user-profile"
|
||||
alt="Avatar Image"
|
||||
src="<%= avatar_image %>">
|
||||
class="editable img-responsive image-user-profile"
|
||||
alt="Avatar Image"
|
||||
src="<%= avatar_image %>">
|
||||
</span>
|
||||
|
||||
<div class="space-4"></div>
|
||||
@@ -51,106 +51,106 @@
|
||||
<div class="profile-contact-links align-left">
|
||||
{% if user.is_authenticated %}
|
||||
<a id="follow-button" class="btn btn-link <% if (is_following) { %> following-disabled <% } %>" data-bypass="true">
|
||||
<i class="icon-plus-sign bigger-120 green"></i>
|
||||
Follow<% if (is_following) { %>ing<% } %>
|
||||
<i class="icon-plus-sign bigger-120 <% if (is_following) { %>red<% } else { %>green <%}%>"></i>
|
||||
<% if (is_following) { %>Unfollow<% } else { %>Follow<%}%>
|
||||
</a>
|
||||
{% else %}
|
||||
<a id="follow-button-login" class="btn btn-link" data-bypass="true">
|
||||
<i class="icon-plus-sign bigger-120 green"></i>
|
||||
Follow<% if (is_following) { %>ing<% } %>
|
||||
Login to follow
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
<br>
|
||||
{% comment %}
|
||||
<a class="btn btn-link" href="#">
|
||||
<i class="icon-envelope bigger-120 pink"></i>
|
||||
Send a message
|
||||
</a>
|
||||
{% endcomment %}
|
||||
<a class="btn btn-link" href="<%= url %>">
|
||||
<i class="icon-globe bigger-125 blue"></i>
|
||||
Profile Link
|
||||
</a>
|
||||
</div>
|
||||
<div class="space-6"></div>
|
||||
<br>
|
||||
{% comment %}
|
||||
<div class="profile-social-links center">
|
||||
<a href="#" class="tooltip-info" title="" data-original-title="Visit my Facebook">
|
||||
<i class="middle icon-facebook-sign icon-2x blue"></i>
|
||||
</a>
|
||||
|
||||
<a href="#" class="tooltip-info" title="" data-original-title="Visit my Twitter">
|
||||
<i class="middle icon-twitter-sign icon-2x light-blue"></i>
|
||||
</a>
|
||||
|
||||
<a href="#" class="tooltip-error" title="" data-original-title="Visit my Pinterest">
|
||||
<i class="middle icon-pinterest-sign icon-2x red"></i>
|
||||
</a>
|
||||
</div>
|
||||
<a class="btn btn-link" href="#">
|
||||
<i class="icon-envelope bigger-120 pink"></i>
|
||||
Send a message
|
||||
</a>
|
||||
{% endcomment %}
|
||||
<a class="btn btn-link" href="<%= url %>">
|
||||
<i class="icon-globe bigger-125 blue"></i>
|
||||
Profile Link
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="space-6"></div>
|
||||
{% comment %}
|
||||
<div class="profile-social-links center">
|
||||
<a href="#" class="tooltip-info" title="" data-original-title="Visit my Facebook">
|
||||
<i class="middle icon-facebook-sign icon-2x blue"></i>
|
||||
</a>
|
||||
|
||||
<div class="col-xs-12 col-sm-9">
|
||||
<div class="center">
|
||||
<a href="/user/<%= slug %>/mixes" class="btn btn-app btn-sm btn-pink">
|
||||
<i class="icon-music bigger-230"></i>
|
||||
<span class="smaller-90">Mixes</span>
|
||||
<span class="badge badge-warning"><%= mix_count%></span>
|
||||
<a href="#" class="tooltip-info" title="" data-original-title="Visit my Twitter">
|
||||
<i class="middle icon-twitter-sign icon-2x light-blue"></i>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/favourites" class="btn btn-app btn-sm btn-danger">
|
||||
<i class="icon-star bigger-230"></i>
|
||||
<span class="smaller-90">Favourites</span>
|
||||
<span class="badge badge-warning"><%= favourite_count %></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/likes" class="btn btn-app btn-sm btn-purple">
|
||||
<i class="icon-heart /bigger-230"></i>
|
||||
<span class="smaller-90">Likes</span>
|
||||
<span class="badge badge-warning"><%= like_count %></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/followers" class="btn btn-app btn-sm btn-default">
|
||||
<i class="icon-check bigger-230"></i>
|
||||
<span class="smaller-90">Followers</span>
|
||||
<span class="badge badge-warning"><%= followers.length %></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/following" class="btn btn-app btn-sm btn-warning">
|
||||
<i class="icon-share bigger-230"></i>
|
||||
<span class="smaller-90">Following</span>
|
||||
<span class="badge badge-warning"><%= following.length %></span>
|
||||
|
||||
<a href="#" class="tooltip-error" title="" data-original-title="Visit my Pinterest">
|
||||
<i class="middle icon-pinterest-sign icon-2x red"></i>
|
||||
</a>
|
||||
</div>
|
||||
<div class="space-12"></div>
|
||||
<div class="profile-user-info profile-user-info-striped">
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> Location</div>
|
||||
<div class="profile-info-value">
|
||||
<i class="icon-map-marker light-orange bigger-110"></i>
|
||||
<span class="usereditable" id="city" style="display: inline;"><%= city %></span>
|
||||
<span class="usereditable" id="country" style="display: inline;"><%= country %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> Joined</div>
|
||||
<div class="profile-info-value">
|
||||
<span id="signup" style="display: inline;"><%= humanise(date_joined) %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> Last Online</div>
|
||||
<div class="profile-info-value">
|
||||
<span id="login" style="display: inline; background-color: rgba(0, 0, 0, 0);"><%= humanise(last_login) %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> About Me</div>
|
||||
<div class="profile-info-value">
|
||||
<div class="usereditable" id="about" style="display: inline; white-space:pre-wrap;"><%= description %></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="space-20"></div>
|
||||
{% endcomment %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 col-sm-9">
|
||||
<div class="center">
|
||||
<a href="/user/<%= slug %>/mixes" class="btn btn-app btn-sm btn-pink">
|
||||
<i class="icon-music bigger-230"></i>
|
||||
<span class="smaller-90">Mixes</span>
|
||||
<span class="badge badge-warning"><%= mix_count%></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/favourites" class="btn btn-app btn-sm btn-danger">
|
||||
<i class="icon-star bigger-230"></i>
|
||||
<span class="smaller-90">Favourites</span>
|
||||
<span class="badge badge-warning"><%= favourite_count %></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/likes" class="btn btn-app btn-sm btn-purple">
|
||||
<i class="icon-heart /bigger-230"></i>
|
||||
<span class="smaller-90">Likes</span>
|
||||
<span class="badge badge-warning"><%= like_count %></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/followers" class="btn btn-app btn-sm btn-default">
|
||||
<i class="icon-check bigger-230"></i>
|
||||
<span class="smaller-90">Followers</span>
|
||||
<span class="badge badge-warning"><%= followers.length %></span>
|
||||
</a>
|
||||
<a href="/user/<%= slug %>/following" class="btn btn-app btn-sm btn-warning">
|
||||
<i class="icon-share bigger-230"></i>
|
||||
<span class="smaller-90">Following</span>
|
||||
<span class="badge badge-warning"><%= following.length %></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="space-12"></div>
|
||||
<div class="profile-user-info profile-user-info-striped">
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> Location</div>
|
||||
<div class="profile-info-value">
|
||||
<i class="icon-map-marker light-orange bigger-110"></i>
|
||||
<span class="usereditable" id="city" style="display: inline;"><%= city %></span>
|
||||
<span class="usereditable" id="country" style="display: inline;"><%= country %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> Joined</div>
|
||||
<div class="profile-info-value">
|
||||
<span id="signup" style="display: inline;"><%= humanise(date_joined) %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> Last Online</div>
|
||||
<div class="profile-info-value">
|
||||
<span id="login" style="display: inline; background-color: rgba(0, 0, 0, 0);"><%= humanise(last_login) %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="profile-info-row">
|
||||
<div class="profile-info-name"> About Me</div>
|
||||
<div class="profile-info-value">
|
||||
<div class="usereditable" id="about" style="display: inline; white-space:pre-wrap;"><%= description %></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="space-20"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user