コード例 #1
0
ファイル: Gig.cs プロジェクト: smithydll/boxsocial
        public static void ShowAll(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewgigs");

            List<Gig> gigs = e.Page.Musician.GetGigs();

            foreach (Gig gig in gigs)
            {
                VariableCollection gigVariableCollection = e.Template.CreateChild("gig_list");

                gigVariableCollection.Parse("ID", gig.Id.ToString());
                gigVariableCollection.Parse("U_GIG", gig.Uri);
                gigVariableCollection.Parse("DESCRIPTION", gig.Abstract);
                gigVariableCollection.Parse("CITY", gig.City);
                gigVariableCollection.Parse("VENUE", gig.Venue);
                gigVariableCollection.Parse("DATE", e.Core.Tz.DateTimeToDateString(gig.GetTime(e.Core.Tz)));
                gigVariableCollection.Parse("COMMENTS", e.Core.Functions.LargeIntegerToString(gig.Comments));
            }

            List<string[]> gigPath = new List<string[]>();
            gigPath.Add(new string[] { "gigs", "Gigs" });

            e.Page.Owner.ParseBreadCrumbs(gigPath);
        }
コード例 #2
0
ファイル: Song.cs プロジェクト: smithydll/boxsocial
        public static void Show(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewsong");

            Song song = null;

            try
            {
                song = new Song(e.Core, e.ItemId);
            }
            catch
            {
                e.Core.Functions.Generate404();
                return;
            }

            e.Template.Parse("TITLE", song.Title);
            e.Template.Parse("LYRICS", song.Lyrics);

            List<Recording> recordings = song.GetRecordings();

            foreach (Recording recording in recordings)
            {
                VariableCollection recordingVariableCollection = e.Template.CreateChild("recording_list");

                recordingVariableCollection.Parse("RECORDING_ID", recording.Id);
                recordingVariableCollection.Parse("RECORDING_LOCATION", recording.RecordingLocation);

                if (recording.MusicianId != song.Musician.Id)
                {
                    recordingVariableCollection.Parse("IS_COVER", "TRUE");
                    recordingVariableCollection.Parse("RECORDING_MUSICIAN_NAME", recording.Musician.DisplayName);
                    recordingVariableCollection.Parse("RECORDING_MUSICIAN_ID", recording.Musician.Id);
                    recordingVariableCollection.Parse("RECORDING_MUSICIAN_URI", recording.Musician.Uri);
                }
            }

            if (e.Page.Musician.Access.Can("COMMENT_SONGS"))
            {
                e.Template.Parse("CAN_COMMENT", "TRUE");
            }
        }
コード例 #3
0
ファイル: Gig.cs プロジェクト: smithydll/boxsocial
        public static void Show(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewgig");

            Gig gig = null;

            try
            {
                gig = new Gig(e.Core, (Musician)e.Page.Owner, e.ItemId);
            }
            catch (InvalidGigException)
            {
                e.Core.Functions.Generate404();
                return;
            }

            e.Template.Parse("CITY", gig.City);
            e.Template.Parse("VENUE", gig.Venue);
            e.Template.Parse("TIME", e.Core.Tz.DateTimeToString(gig.GetTime(e.Core.Tz)));
            e.Template.Parse("YEAR", gig.GetTime(gig.TimeZone).Year.ToString());
            e.Template.Parse("COST", gig.Cost);
            e.Template.Parse("IS_TICKETS_AT_DOOR", (gig.TicketsAtTheDoor) ? "TRUE" : "FALSE");
            e.Template.Parse("U_TICKETS", gig.TicketsUri);
            e.Core.Display.ParseBbcode("ABSTRACT", gig.Abstract);

            if (e.Page.Owner.Access.Can("COMMENT_GIGS"))
            {
                e.Template.Parse("CAN_COMMENT", "TRUE");
            }

            e.Core.Display.DisplayComments(e.Template, gig.Musician, gig);

            List<string[]> gigPath = new List<string[]>();
            if (gig.Tour != null)
            {
                gigPath.Add(new string[] { "*tours", "Tours" });
                gigPath.Add(new string[] { "*tours/" + gig.Tour.Id.ToString(), gig.Tour.Title });
            }
            gigPath.Add(new string[] { "gigs", "Gigs" });
            gigPath.Add(new string[] { gig.Id.ToString(), gig.Venue });

            e.Page.Owner.ParseBreadCrumbs(gigPath);
        }
コード例 #4
0
ファイル: MusicianMember.cs プロジェクト: smithydll/boxsocial
        public static void Show(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewmusician_member");

            MusicianMember member = null;

            try
            {
                member = new MusicianMember(e.Core, (Musician)e.Page.Owner, e.Slug, UserLoadOptions.All);
            }
            catch (InvalidMusicianMemberException)
            {
                e.Core.Functions.Generate404();
                return;
            }

            List<Instrument> instruments = member.GetInstruments();

            foreach (Instrument instrument in instruments)
            {
                VariableCollection instrumentVariableCollection = e.Template.CreateChild("instrument_list");

                instrumentVariableCollection.Parse("NAME", instrument.Name);
            }

            e.Core.Display.ParseBbcode("BIOGRAPHY", member.Biography);
        }
コード例 #5
0
ファイル: MusicianMember.cs プロジェクト: smithydll/boxsocial
        public static void ShowAll(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewmusician_members");

            List<MusicianMember> members = e.Page.Musician.GetMembers();

            foreach (MusicianMember member in members)
            {
                VariableCollection memberVariableCollection = e.Template.CreateChild("member_list");

                memberVariableCollection.Parse("STAGE_NAME", member.StageName);
            }
        }
コード例 #6
0
ファイル: Musician.cs プロジェクト: smithydll/boxsocial
        internal static void ShowProfile(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewmusician");

            if (!e.Page.Musician.Access.Can("VIEW"))
            {
                //e.Core.Functions.Generate403();
                //return;
            }

            /* pages */
            e.Core.Display.ParsePageList(e.Page.Musician, true);

            e.Template.Parse("MUSICIAN_DISPLAY_NAME", e.Page.Musician.DisplayName);
            e.Template.Parse("DATE_JOINED", e.Core.Tz.DateTimeToString(e.Page.Musician.GetRegisteredDate(e.Core.Tz)));
            e.Template.Parse("BIOGRAPHY", e.Page.Musician.Biography);
            e.Template.Parse("U_MUSICIAN", e.Page.Musician.Uri);
            //e.Template.Parse("U_BECOME_FAN", e.Page.Musician.BecomeFanUri);

            e.Template.Parse("U_MUSICIAN_ACCOUNT", e.Core.Hyperlink.AppendSid(e.Page.Musician.AccountUriStub));

            if (e.Page.Musician.Members > 1)
            {
                e.Template.Parse("MEMBERS_PANE", "TRUE");

                List<MusicianMember> members = e.Page.Musician.GetMembers();

                foreach (MusicianMember member in members)
                {
                    VariableCollection memberVariableCollection = e.Template.CreateChild("member_list");

                    memberVariableCollection.Parse("STAGE_NAME", member.StageName);
                    memberVariableCollection.Parse("U_MEMBER", member.Uri);
                    memberVariableCollection.Parse("I_MEMBER", member.Tile);
                }
            }

            /* pages */
            e.Core.Display.ParsePageList(e.Page.Musician, true);
        }
コード例 #7
0
ファイル: Recording.cs プロジェクト: smithydll/boxsocial
        public static void Show(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewrecording");

            Recording recording = null;

            try
            {
                recording = new Recording(e.Core, e.ItemId);
            }
            catch
            {
                e.Core.Functions.Generate404();
                return;
            }
        }
コード例 #8
0
ファイル: Release.cs プロジェクト: smithydll/boxsocial
        public static void ShowDiscography(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewdiscography");

            List<Release> releases = e.Page.Musician.GetReleases();

            foreach (Release release in releases)
            {
                VariableCollection releaseVariableCollection = null;
                switch (release.ReleaseType)
                {
                    case ReleaseType.Album:
                        releaseVariableCollection = e.Template.CreateChild("album_list");
                        break;

                    case ReleaseType.Compilation:
                        releaseVariableCollection = e.Template.CreateChild("compilation_list");
                        break;
                    case ReleaseType.Demo:
                        releaseVariableCollection = e.Template.CreateChild("demo_list");
                        break;
                    case ReleaseType.DVD:
                        releaseVariableCollection = e.Template.CreateChild("dvd_list");
                        break;
                    case ReleaseType.EP:
                        releaseVariableCollection = e.Template.CreateChild("ep_list");
                        break;
                    case ReleaseType.Single:
                        releaseVariableCollection = e.Template.CreateChild("single_list");
                        break;
                    default:
                        // do nothing
                        break;
                }

                if (releaseVariableCollection != null)
                {
                    releaseVariableCollection.Parse("TITLE", release.Title);
                    releaseVariableCollection.Parse("URI", release.Uri);
                }
            }
        }
コード例 #9
0
ファイル: Release.cs プロジェクト: smithydll/boxsocial
        public static void Show(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewrelease");

            Release release = null;

            try
            {
                release = new Release(e.Core, e.Slug);
            }
            catch
            {
                e.Core.Functions.Generate404();
                return;
            }

            List<Track> tracks = release.GetTracks();

            foreach (Track track in tracks)
            {
                VariableCollection trackVariableCollection = e.Template.CreateChild("track_list");

            }

            e.Core.Display.DisplayComments(e.Template, release.Musician, release);
        }
コード例 #10
0
ファイル: Fan.cs プロジェクト: smithydll/boxsocial
        public static void ShowAll(object sender, ShowMPageEventArgs e)
        {
            e.Template.SetTemplate("Musician", "viewfans");

            Musician musician = e.Page.Musician;

            e.Template.Parse("U_FILTER_ALL", musician.FansUri);
            e.Template.Parse("U_FILTER_BEGINS_A", musician.GetFansUri("a"));
            e.Template.Parse("U_FILTER_BEGINS_B", musician.GetFansUri("b"));
            e.Template.Parse("U_FILTER_BEGINS_C", musician.GetFansUri("c"));
            e.Template.Parse("U_FILTER_BEGINS_D", musician.GetFansUri("d"));
            e.Template.Parse("U_FILTER_BEGINS_E", musician.GetFansUri("e"));
            e.Template.Parse("U_FILTER_BEGINS_F", musician.GetFansUri("f"));
            e.Template.Parse("U_FILTER_BEGINS_G", musician.GetFansUri("g"));
            e.Template.Parse("U_FILTER_BEGINS_H", musician.GetFansUri("h"));
            e.Template.Parse("U_FILTER_BEGINS_I", musician.GetFansUri("i"));
            e.Template.Parse("U_FILTER_BEGINS_J", musician.GetFansUri("j"));
            e.Template.Parse("U_FILTER_BEGINS_K", musician.GetFansUri("k"));
            e.Template.Parse("U_FILTER_BEGINS_L", musician.GetFansUri("l"));
            e.Template.Parse("U_FILTER_BEGINS_M", musician.GetFansUri("m"));
            e.Template.Parse("U_FILTER_BEGINS_N", musician.GetFansUri("n"));
            e.Template.Parse("U_FILTER_BEGINS_O", musician.GetFansUri("o"));
            e.Template.Parse("U_FILTER_BEGINS_P", musician.GetFansUri("p"));
            e.Template.Parse("U_FILTER_BEGINS_Q", musician.GetFansUri("q"));
            e.Template.Parse("U_FILTER_BEGINS_R", musician.GetFansUri("r"));
            e.Template.Parse("U_FILTER_BEGINS_S", musician.GetFansUri("s"));
            e.Template.Parse("U_FILTER_BEGINS_T", musician.GetFansUri("t"));
            e.Template.Parse("U_FILTER_BEGINS_U", musician.GetFansUri("u"));
            e.Template.Parse("U_FILTER_BEGINS_V", musician.GetFansUri("v"));
            e.Template.Parse("U_FILTER_BEGINS_W", musician.GetFansUri("w"));
            e.Template.Parse("U_FILTER_BEGINS_X", musician.GetFansUri("x"));
            e.Template.Parse("U_FILTER_BEGINS_Y", musician.GetFansUri("y"));
            e.Template.Parse("U_FILTER_BEGINS_Z", musician.GetFansUri("z"));

            List<Fan> fans = musician.GetFans(e.Page.TopLevelPageNumber, 20, e.Core.Functions.GetFilter());

            foreach (Fan fan in fans)
            {
                VariableCollection fanVariableCollection = e.Template.CreateChild("fan_list");

                fanVariableCollection.Parse("DISPLAY_NAME", fan.DisplayName);
            }
        }