#silverstripe IRC Log

IRC log for 22 June 2015

All timestamps are in UTC.

1: [00:00:01] * adrexia_ nods
2: [00:00:14] <adrexia_> yeah, write to file could work
3: [00:00:22] <adrexia_> hmm
4: [00:00:31] <adrexia_> I winder if you could use the github api
5: [00:00:34] <adrexia_> *wonder
6: [00:01:03] <adrexia_> and do something where it commits the updates _somewhere_
7: [00:02:12] <adrexia_> anyway, this is a good article of the shadow dom and accessibility: http://substantial.com/blog/2014/02/05/accessibility-and-the-shadow-dom/
8: [00:05:08] * Stomach quit (Quit: zzz)
9: [00:06:53] * Stomach has joined #silverstripe
10: [00:08:08] * spronk has joined #silverstripe
11: [00:08:46] <Ryan-Toast> adrexia_: Seems easier to just say “no, don’t do that“ :P
12: [00:08:57] <adrexia_> lol
13: [00:09:09] <adrexia_> for some people more than others ;)
14: [00:09:22] <adrexia_> some developers or sales people eventually say yes.
15: [00:09:22] * firefox2kx quit (Read error: Connection reset by peer)
16: [00:09:28] <adrexia_> and then you have a problem
17: [00:09:33] <Ryan-Toast> devs need to ALWAYS BE IN SCOPING MEETINGS
18: [00:09:37] <adrexia_> problems need solutions :P
19: [00:09:51] * firefox2kx has joined #silverstripe
20: [00:09:57] <adrexia_> Ryan-Toast yeah, but even some devs find it hard to say no to clients
21: [00:09:58] <Ryan-Toast> Charts: we will build you a system where you can add all your bs and we control the output :P
22: [00:10:22] <Ryan-Toast> Saying “because SEO“ is a good way to shut marketing people up.
23: [00:10:45] <Ryan-Toast> “We can do that, but you run the risk of taking a hit on google ranking”
24: [00:11:01] <antmas> Ryan-Toast: that line is perfect :P
25: [00:11:09] <antmas> "NOT MY GOOGLE RANKINGS NOOOOOOOOOOOOO"
26: [00:11:10] <Ryan-Toast> antmas: I use it allll the time
27: [00:15:29] <Ryan-Toast> Need to make a repo for “dev buzzwords to get clients to listen to you“
28: [00:15:57] <adrexia_> Ryan-Toast when 'but it;s a security risk' doesn't work, then 'because SEO' isn't likely to work either
29: [00:16:06] <adrexia_> "Well, Drupal lets you do it"
30: [00:16:10] <Ryan-Toast> adrexia_: lol
31: [00:16:34] <Ryan-Toast> adrexia_: “that’s fine, but you’ll just have to sign this contract saying you’re responsible for any issues…”
32: [00:16:41] <antmas> boom
33: [00:17:27] <adrexia_> Ryan-Toast which ends up with you compromising your work. And even with that contract... someone will end up dealing with the issues it caused :P
34: [00:17:36] * ss-helper quit (Remote host closed the connection)
35: [00:17:42] <adrexia_> I dunno. I feel there must be a real solution to this
36: [00:17:52] * ss-helper has joined #silverstripe
37: [00:17:57] <Ryan-Toast> adrexia_: Meh, as long as they pay for it I don’t care.
38: [00:18:03] <adrexia_> ahh, yep ;)
39: [00:18:10] <adrexia_> I'm not built that way
40: [00:18:20] <Ryan-Toast> adrexia_: It’s just managing client expectations for cost, and maintenance.
41: [00:18:50] <Ryan-Toast> End of the day I’m running a business, not my own ego :P
42: [00:18:56] <adrexia_> security?
43: [00:19:12] <Ryan-Toast> adrexia_: Oh, are we specifically talking about the js?
44: [00:19:12] <adrexia_> don't you have... I dunno, responsibilities to your clients?
45: [00:19:17] <adrexia_> yes :P
46: [00:19:21] <Ryan-Toast> I’m not :P
47: [00:19:27] <adrexia_> ahh
48: [00:19:30] <Ryan-Toast> I’m just talking about anything in general, haha
49: [00:19:44] <adrexia_> will I guess it goes for _anything_ that is actually more liekly to cause harm than good
50: [00:20:19] <Ryan-Toast> adrexia_: at the very least I’d run a jslint task on it when it was saved/uploaded
51: [00:20:28] <adrexia_> something that someone wants, and is willing to pay for, that is actually not in teh best interest of them, their company, or their users.
52: [00:20:53] <adrexia_> Ryan-Toast - yep that's going more towards the *real solution* end of things :)
53: [00:21:01] <Ryan-Toast> adrexia_: Defs explain that, and if they still push ahead with it, that’s what the contract is for.
54: [00:21:55] <adrexia_> I just don't want to hand a loaded gun to a child
55: [00:22:06] <Ryan-Toast> adrexia_: Understandable.
56: [00:22:21] <adrexia_> but yeah - that doesn't preclude them getting what they want
57: [00:22:32] <Ryan-Toast> If you’ve explained why it’s a bad idea, and the risks involved. You’ve done your duty.
58: [00:22:36] <adrexia_> but there's not a standard or good solution to it yet
59: [00:23:03] <adrexia_> nah, I think it's a cop out
60: [00:23:22] <adrexia_> obviously at some point that's likely to happen
61: [00:23:25] <Ryan-Toast> Depending on what they wanted, I would host the js externally on something like codepen, and pull in the codepen to the page.
62: [00:23:43] <adrexia_> but in general, I think I'd like a solution to this that is a bit more technically sound
63: [00:23:51] <adrexia_> yep :)
64: [00:24:15] <adrexia_> codepen/ github/ gists /
65: [00:24:35] <adrexia_> + jslint
66: [00:24:39] <Ryan-Toast> yarp
67: [00:24:41] <adrexia_> + maybe using the shadowdom
68: [00:24:45] <Ryan-Toast> lol
69: [00:24:56] * mahfuz has joined #silverstripe
70: [00:24:57] <adrexia_> or, iframes
71: [00:28:28] * glenn-bautista quit (Quit: Leaving.)
72: [00:39:15] * DanaeNZ quit (Quit: DanaeNZ)
73: [00:43:57] <UncleCheese> [12:21:55] <adrexia_> I just don't want to hand a loaded gun to a child
74: [00:44:16] <UncleCheese> if you were a Republican presidential candidate, you would have just lost all of your sponsors
75: [00:44:27] <adrexia_> lols
76: [00:44:45] <UncleCheese> "She's try-nna take errr guns!!!!!"
77: [00:45:10] <adrexia_> it is pretty weird how deeply insane some people are about guns
78: [00:45:25] <UncleCheese> it really is
79: [00:45:51] <UncleCheese> what gets me is that you can't even begin a conversation about taking any single gun away from any single person anymore
80: [00:46:05] <adrexia_> yeah
81: [00:46:05] <UncleCheese> like "Hmm.. how about a law that says you can't carry an assault rifle within 100 metres of a school?"
82: [00:46:14] <UncleCheese> "ANTI GUN SOCIALIST MUSLIM FASCIST!!!!!!!!"
83: [00:46:21] <adrexia_> though I've noticed people have switched to talking about taking away the bullets ;)
84: [00:46:49] * DanaeNZ has joined #silverstripe
85: [00:46:50] <adrexia_> "so, umm, how about we just make it illegal to stock the buttlets?"
86: [00:46:56] <adrexia_> *bullets
87: [00:46:58] <Colin[pi]> buttlets rofl
88: [00:47:11] <UncleCheese> "We don't need no gun control.. we need some bullet control. Every bullet should cost five thousand dollars. If a bullet cost five thousand dollars, no more innocent bystanders. People be like, 'Damn, he musta done sumthin'!'"
89: [00:47:14] <adrexia_> it's like you're trying to cut of their arm or soemthing
90: [00:47:37] <UncleCheese> "Man, I swear I'm gonna kill you....... If I could afford it. You better hope I can't get no bullets on layaway!"
91: [00:47:51] * glenn-bautista has joined #silverstripe
92: [00:47:52] <adrexia_> Gun's don';t kill people, bullets kill people
93: [00:47:52] <UncleCheese> - Chris Rock
94: [00:47:56] <UncleCheese> haha
95: [00:47:59] <UncleCheese> totally
96: [00:48:15] <UncleCheese> Cars don't kill people.. 2 tonnes of metal going 100k does
97: [00:51:07] <Colin[pi]> the gun debate/issue in the US will never be solved... it's just one of those things
98: [00:52:50] <antmas> are we on to the gun debate already?
99: [00:52:56] <antmas> it's Monday :O
100: [00:54:10] <Colin[pi]> Friday in #SS: http://i.imgur.com/5OkucPE.gif
101: [00:54:52] <antmas> :D
102: [00:57:19] <ss23> re "<adrexia_>II just don't want to hand a loaded gun to a child", I have no problems with kids playing with guns in supervised situations (e.g. gun range, instructors, etc). Like, yeah shit happens like that kid who was given a fully automatic and accidently killed someone or w/e, but *shrug*
103: [00:57:36] <ss23> I mean, here in NZ a bunch of kids play with guns on farms n stuff and it's all good
104: [00:57:59] <adrexia_> http://www.businessinsider.com.au/the-economist-made-a-brutal-parallel-between-us-mass-shootings-and-pollution-in-china-2015-6
105: [00:58:02] <ss23> (We did much more dangererous shit with fire and petrol etc than guns)
106: [00:58:21] <ss23> also, yeah, Rofl at the comparison
107: [00:58:26] <ss23> especially the "progress on polution"
108: [00:58:38] <adrexia_> ss23 - yep your situation could be added to the analogy
109: [00:58:57] <adrexia_> give the right training
110: [00:59:04] <MichalKleiner> a little job advertising - https://www.facebook.com/michal.kleiner/posts/10206791923506226
111: [00:59:05] * stecman has joined #silverstripe
112: [00:59:07] <adrexia_> put a bunch of safety mechanisms in place
113: [00:59:22] * camfindlay quit (Quit: camfindlay)
114: [00:59:46] <adrexia_> yep - that's the best part :D
115: [00:59:49] <ss23> mm, can be summed up as "be responsible, you idiots"
116: [01:00:12] <antmas> so we have Toast and Chrome Toaster :P
117: [01:03:59] * Stomach quit (Quit: zzz)
118: [01:07:38] <Ryan-Toast> MichalKleiner: http://i.imgur.com/o77bV0y.jpg
119: [01:09:18] <MichalKleiner> Ryan-Toast: yeah, we have a little make over of our site on the list :-D but you know how the priorities are ay
120: [01:09:25] <MichalKleiner> clients first
121: [01:09:30] <Ryan-Toast> MichalKleiner: More thjan most :P
122: [01:12:23] * adrexia_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
123: [01:16:26] * Stomach has joined #silverstripe
124: [01:18:40] <MichalKleiner> anyway, if you know about someone skilled looking for a job, get them in touch with us, thanks ;-)
125: [01:20:27] <Stomach> glhf :P
126: [01:20:53] * glenn-bautista1 has joined #silverstripe
127: [01:21:02] * camfindlay has joined #silverstripe
128: [01:21:50] * glenn-bautista quit (Read error: Connection reset by peer)
129: [01:28:05] * adrexia has joined #silverstripe
130: [01:32:31] * critchie has joined #silverstripe
131: [01:36:23] * zippy has joined #silverstripe
132: [01:38:25] * antmas yawns
133: [01:38:51] * MichalKleiner doesn't yawn after 2nd 355ml red bull :-D
134: [01:39:03] <Ryan-Toast> antmas: yaaaawn
135: [01:39:07] <MichalKleiner> but my keystrokes seem to be a bit chaotic now :-D
136: [01:39:22] <critchie> Hey guys. Web Dev from Wellington here. I have been having an issue with 'CheckboxSetField'. I get really weird markup whenever I use this field, whether it be backend or frontend. I am going to report it as a bug, but wanted to ensure no one knew anymore before I do.
137: [01:39:28] <critchie> Here is an example '<div id="PopularTopics" class="field optionset checkboxset gazette" name="PopularTopics" class="optionset checkboxset gazette" id="Form_EditForm_PopularTopics">'
138: [01:39:33] <Ryan-Toast> Had avo in my subway today, it’s a lot more filling than I remember.
139: [01:39:43] <critchie> Notice two id and class attributes
140: [01:40:03] <Ryan-Toast> critchie: vanilla install?
141: [01:40:30] <critchie> CWP. no templates overidden in forms folder
142: [01:41:00] <Ryan-Toast> critchie: want to paste the code in the form?
143: [01:41:17] <critchie> yeah sure. I just chuck it in a paste bin brb
144: [01:43:21] <Ryan-Toast> critchie: Chuck this in your config.yml http://pastie.org/10252277 and set your environment to dev, and it will tell you what template is being used.
145: [01:43:35] <Ryan-Toast> when you view-source
146: [01:43:59] <antmas> Ryan-Toast: :O dude
147: [01:44:03] <antmas> I'mma get on that
148: [01:44:14] <Ryan-Toast> antmas: It’s pretty fucking handy./
149: [01:44:23] <MichalKleiner> +1
150: [01:44:25] <zippy> that... looks useful
151: [01:44:26] <antmas> mm
152: [01:44:37] <critchie> damn that is handy
153: [01:44:43] <antmas> finding what template is in use is a nightmare/guesswork
154: [01:44:46] <zippy> Ryan-Toast: you just got yourself a gold star!
155: [01:45:10] <zippy> antmas: that sounds like the start of an infomercial
156: [01:45:10] <critchie> I have spent so much time tracking down templates. I'll give it a whirl
157: [01:45:17] <zippy> not any more, thanks to this handy snippet of code from Ryan
158: [01:45:18] <Ryan-Toast> zippy: http://i.imgur.com/fhEW8.gif
159: [01:45:22] <antmas> zippy: lol it does!
160: [01:45:54] <antmas> zippy: flooding? snow? bad weather? What is this the rest of NZ speak of :O
161: [01:46:13] <zippy> just chilly :)
162: [01:46:25] <zippy> paypal recurring payments, anyone use a module for this? tracking when they cancel and what not
163: [01:46:26] <MichalKleiner> I miss snow
164: [01:46:43] <Stomach> zippy - fucking nightmare
165: [01:47:03] <Ryan-Toast> zippy: time to quit your job I think.
166: [01:47:09] <zippy> Stomach: I've rolled my own in the past, and fine one off's I use Omnipay... but recurring wonder if there is something community
167: [01:47:23] <critchie> So it seems to be using the standard template '/htdocs/framework/templates/forms/CheckboxSetField.ss'
168: [01:47:26] <Stomach> nah we wrote out own, its just a fucking nightmare
169: [01:47:36] <Ryan-Toast> Omnipay supports reoccuring payments I’m pretty sure.
170: [01:47:44] <antmas> Ryan-Toast: +1
171: [01:47:50] <zippy> nop
172: [01:47:59] <Ryan-Toast> critchie: got that form code, bruv?
173: [01:48:00] <antmas> wat
174: [01:48:12] <antmas> oh wait
175: [01:48:18] <antmas> we don't use omni
176: [01:48:19] <antmas> nvm
177: [01:48:30] <zippy> >> At this stage, automatic recurring payments functionality is out of scope for this library.
178: [01:48:33] <zippy> good for one off's
179: [01:48:59] <antmas> 'out of scope'
180: [01:49:00] <Ryan-Toast> “Omnipay does not cover recurring payments or billing agreements, and so those features are not included in this package. Extensions to this gateway are always welcome.”
181: [01:49:03] <Ryan-Toast> oh, lame.
182: [01:49:18] <Ryan-Toast> I think mainly because”fuck that noise“
183: [01:49:30] <zippy> yea, classic open sauce
184: [01:49:36] <antmas> zippy: fire your client
185: [01:50:06] <Ryan-Toast> zippy: burn their office down, they will forget about re-occuring payments.
186: [01:50:24] <zippy> yea because, who needs those aye....
187: [01:51:00] <MichalKleiner> yea < shuffle > aye
188: [01:51:03] <Ryan-Toast> zippy: if you find something let me know, I’ve been putting something off because of it.
189: [01:51:25] <zippy> mm
190: [01:51:29] <antmas> Polipay
191: [01:51:30] <antmas> :P
192: [01:51:35] <zippy> ah!
193: [01:51:45] <Ryan-Toast> gtfo
194: [01:51:49] <antmas> hahaha
195: [01:51:54] <zippy> that one I refuse to implement, it still blows me over the places that use it though, like, WTF
196: [01:51:54] <Ryan-Toast> My friends dad owns poli
197: [01:52:09] <Ryan-Toast> He tried to convert me once. No thanks, man.
198: [01:52:19] * babak quit (Quit: Connection closed for inactivity)
199: [01:52:26] <Colin[pi]> poli, not even once
200: [01:52:31] <antmas> does it do recurring payments though?
201: [01:52:36] <antmas> DOES IT?
202: [01:53:01] <Ryan-Toast> MY friends, and his daughter are in their stock imagry, hahaha
203: [01:54:12] <antmas> their website is fucking janky
204: [02:00:07] * babak has joined #silverstripe
205: [02:05:30] * UncleCheese quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
206: [02:08:59] * Stomach quit (Quit: zzz)
207: [02:09:41] * Stomach has joined #silverstripe
208: [02:16:07] <critchie> Cheers for the help guys. In the end I discovered it is an intermittent problem with Zen Validator. I am just filling a bug report with the author. This: SSViewer: source_file_comments: true saved my bacon
209: [02:16:11] <critchie> thank you so much
210: [02:18:52] * Tanger has joined #silverstripe
211: [02:19:32] <Ryan-Toast> critchie: No problems, glad you found the issue :)
212: [02:27:51] * zippy quit (Ping timeout: 276 seconds)
213: [02:31:58] * travis-ci has joined #silverstripe
214: [02:31:59] <travis-ci> silverstripe/silverstripe-cms#1287 (3 - 6513f8a : Damian Mooyman): The build is still failing.
215: [02:31:59] <travis-ci> Change view : https://github.com/silverstripe/silverstripe-cms/compare/2d4cc6a99fe9...6513f8ac49ca
216: [02:31:59] <travis-ci> Build details : https://travis-ci.org/silverstripe/silverstripe-cms/builds/67781482
217: [02:31:59] * travis-ci has left #silverstripe
218: [02:35:04] <Tanger> Hey guys, I'm using MyObject::get(), converting the DataList to an ArrayList and using a casted field to filter the object by date, depending on whether it has a date set in the future
219: [02:35:35] <Tanger> Odd thing is, it only gets items on Live
220: [02:35:51] * UncleCheese has joined #silverstripe
221: [02:35:55] <Tanger> In Draft, it returns no results, despite the DB etc indicating that an object does exist with a future date'
222: [02:38:23] <Ryan-Toast> Tanger: get by default only gets published biz.
223: [02:38:27] <Ryan-Toast> I believe
224: [02:40:15] <Tanger> Ryan-Toast: So it won't show any results on Draft mode? Thing is, on my dev machine It does produce results, even on Draft mode
225: [02:40:44] <Ryan-Toast> is your dev machine set to dev enviroment?
226: [02:41:01] <Ryan-Toast> and/or you’re logged in asd an admin?
227: [02:42:16] <Tanger> Yes, on both accounts. I set the production version to dev to test and I'm logged into an admin account on both
228: [02:42:28] * UncleChe_ has joined #silverstripe
229: [02:42:45] <Ryan-Toast> Tanger: ¯\_(ツ)_/¯
230: [02:42:50] <Tanger> :D
231: [02:43:07] <Tanger> Thanks anyway man.
232: [02:47:38] <Tanger> Oh wow, the Page the objects are on has a different ID in Live compared to Draft -_-
233: [02:48:10] * travis-ci has joined #silverstripe
234: [02:48:11] <travis-ci> silverstripe/silverstripe-framework#5150 (3 - f90c1a8 : Damian Mooyman): The build passed.
235: [02:48:11] <travis-ci> Change view : https://github.com/silverstripe/silverstripe-framework/compare/5fcebbef02b3...f90c1a8791f4
236: [02:48:11] <travis-ci> Build details : https://travis-ci.org/silverstripe/silverstripe-framework/builds/67781531
237: [02:48:11] * travis-ci has left #silverstripe
238: [02:54:09] * glenn-bautista1 quit (Quit: Leaving.)
239: [02:55:51] * glenn-bautista has joined #silverstripe
240: [02:56:41] <Ryan-Toast> How do I extend this if the ShoppinmgCart doesn’t extend anything? https://github.com/burnbright/silverstripe-shop/blob/master/code/cart/ShoppingCart.php#L139
241: [03:03:40] <Colin[pi]> Ryan-Toast: that's an extension on the order, not the cart
242: [03:04:00] <Ryan-Toast> Colin[pi]: DanaeNZ pointed that out, and I felt like a derp.
243: [03:04:05] <Colin[pi]> lol
244: [03:04:11] <Colin[pi]> we all do it :D
245: [03:04:31] <DanaeNZ> tis Monday
246: [03:04:59] <Colin[pi]> and tbh, most extends are $this->extend :)
247: [03:05:52] <DanaeNZ> Yeah, it’s still weird
248: [03:06:48] <Colin[pi]> in fact I thought extend was a protected method
249: [03:06:51] <Colin[pi]> guess not
250: [03:08:13] <DanaeNZ> naw tis public
251: [03:09:54] * Stomach quit (Quit: zzz)
252: [03:10:46] * critchie quit (Ping timeout: 246 seconds)
253: [03:11:19] * Stomach has joined #silverstripe
254: [03:15:45] * UncleCheese quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
255: [03:23:38] * antmas quit (Quit: Page closed)
256: [03:45:23] * camfindlay quit (Quit: camfindlay)
257: [04:11:00] * glenn-bautista quit (Quit: Leaving.)
258: [04:15:09] * Stomach quit (Quit: zzz)
259: [04:16:49] * Stomach has joined #silverstripe
260: [04:17:53] * ss-helper quit (Remote host closed the connection)
261: [04:18:07] * ss-helper has joined #silverstripe
262: [04:18:31] * Stomach quit (Client Quit)
263: [04:19:23] * Stomach has joined #silverstripe
264: [04:26:00] * Error404NotFound has joined #silverstripe
265: [04:28:47] * Error404NotFound quit (Remote host closed the connection)
266: [04:31:28] * nikob has joined #silverstripe
267: [04:33:19] * camfindlay has joined #silverstripe
268: [04:33:54] <ss23> my local git branches display rare insight into the workings of my mind
269: [04:33:59] <ss23> foobar
270: [04:33:59] <ss23> madhax
271: [04:33:59] <ss23> master
272: [04:39:21] <Stomach> pulls/stupid-paypal-bug-i-hate-them
273: [04:39:37] <ss23> lol
274: [04:40:02] <Stomach> mine are mostly legitimately of no worth
275: [04:40:08] <Stomach> feature/committees-project
276: [04:40:12] <Stomach> thats not helpful
277: [04:50:29] * tmro is now known as keroberos
278: [04:55:19] <Ryan-Toast> Oh good, javascriptTemplate doesn’t work in the cms :(
279: [05:00:16] <Stomach> move it out of the theme?
280: [05:00:48] <Ryan-Toast> Not in a theme
281: [05:01:30] <Ryan-Toast> It’s the case where it won’t add the JS until you reload that page
282: [05:01:36] * Sticks has joined #silverstripe
283: [05:04:01] * Kingy^ has joined #silverstripe
284: [05:04:58] <Kingy^> Hey team, how can I stop shortcodes doing their thing in a specific HTMLText field?
285: [05:07:04] * Hailwood quit (Remote host closed the connection)
286: [05:07:30] <Ryan-Toast> Kingy: performReadonlyTransformation() may work?
287: [05:14:06] * veb quit (Quit: veb-irc: &)
288: [05:16:51] * Stomach quit (Quit: zzz)
289: [05:16:52] <Kingy^> Ryan-Toast: hmm ok. So there isn't anyway to just be like $Content.GoAwayShortCodes :P
290: [05:17:04] <Ryan-Toast> Kingy^: Not that I know of, though there may be.
291: [05:17:15] <Ryan-Toast> I doubt it, it’s a bit of an edge case.
292: [05:17:36] <Ryan-Toast> LimitWordCount set to 10,000 may do it as a hacky way :P
293: [05:17:52] <ss23> If you made shortcodes stop, links would all break too remember
294: [05:17:58] <Ryan-Toast> just take a look at how Summary() works
295: [05:18:36] <Kingy^> ss23: I just need it stopped on 1 particular field
296: [05:18:53] <Kingy^> either that or I i'll just go and re-do what was done earlier lol
297: [05:22:20] * terryapodaca quit (Quit: Leaving.)
298: [05:27:36] * UncleChe_ quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
299: [05:29:13] * micmania1 quit (Quit: micmania1)
300: [05:32:16] * micmania1 has joined #silverstripe
301: [05:35:43] * glenn-bautista has joined #silverstripe
302: [05:36:04] * veb has joined #silverstripe
303: [05:44:52] * DanaeNZ quit (Quit: DanaeNZ)
304: [05:48:06] * micmania1 quit (Quit: micmania1)
305: [05:48:32] * veb quit (Quit: veb-irc: &)
306: [06:04:17] * adrexia quit (Ping timeout: 272 seconds)
307: [06:04:38] * Stomach has joined #silverstripe
308: [06:05:09] <Ryan-Toast> Can you set a modelAdmin gridfield to add to a particular page?
309: [06:05:31] * camfindlay quit (Quit: camfindlay)
310: [06:08:21] * camfindlay has joined #silverstripe
311: [06:08:35] * camfindlay quit (Client Quit)
312: [06:13:05] <stecman> Just having a look through the 3.2 beta change log.. what happened to using semantic versioning?
313: [06:13:06] <stecman> http://docs.silverstripe.org/en/3.1/contributing/release_process/#release-numbering
314: [06:13:42] * Mike123 has joined #silverstripe
315: [06:13:53] <Mike123> Morning :)
316: [06:13:59] <Kingy^> morning
317: [06:14:01] <ss23> There was a decision made to make it 3.2 instead of 4.0 I believe, but honestly not sure why
318: [06:14:06] <ss23> stecman: Might be a discussion on the dev list about it?
319: [06:16:50] <stecman> it looks like there hasn't been anything mentioned in there since earlier this year ..kind of a shame, but hopefully the code base will be in a state by 4.0 that semver can be followed strictly
320: [06:17:06] <Mike123> https://github.com/sheadawson/silverstripe-blocks i'm using this module , working fine on sitetree pages , is it possible to extend it so that my DataObject would use it too ?
321: [06:17:51] * stecman quit (Quit: This computer has gone to sleep)
322: [06:19:07] <Ryan-Toast> Mike123: Add it in your yml config and see what happenes.
323: [06:31:03] <Mike123> Ryan-Toast , what exatcly should i add ?
324: [06:32:06] * glenn-bautista quit (Ping timeout: 244 seconds)
325: [06:34:20] * r_hector has joined #silverstripe
326: [06:40:05] * Ryan-Toast quit (Quit: Ryan-Toast)
327: [06:47:25] * Stomach quit (Quit: zzz)
328: [06:56:40] * aditya has joined #silverstripe
329: [06:56:50] <aditya> DataObject::get("CaseStudyPage", ($page->ClassName=="LocationPage" ? "(LocationPageID=".$page->ID." OR LocationPageID IS NULL)" : ""), "RAND()", "LEFT JOIN Page_Location ON (Page_Location.PageID=SiteTree_Live.ID)", 1); want to change this code to ss 3.1 compatible
330: [07:02:42] * adrexia has joined #silverstripe
331: [07:03:50] * micmania1 has joined #silverstripe
332: [07:05:49] <aditya> tell me come on plz
333: [07:14:22] * mahfuz quit (Ping timeout: 246 seconds)
334: [07:15:04] * arnhoe has joined #silverstripe
335: [07:17:22] * Tanger quit (Quit: sleep())
336: [07:32:02] * Stomach has joined #silverstripe
337: [07:38:10] * aditya quit (Ping timeout: 246 seconds)
338: [07:46:30] <ss23> micmania1: bah, we did have it set up right. Issue is that "duplicate" shows up in the menu, but "forbidden" shows up when you click, and we didn't test clicking it :(
339: [07:46:34] <ss23> micmania1: lets go over it tomorrow pls
340: [07:47:04] <micmania1> ss23: k
341: [07:48:54] <ss23> is there a shortcode registered for [1] [2] etc?
342: [07:50:45] <Mike123> why sometimes APPLICATION_ENV diesnt recognize enviroment ? when i set it stright like 'dev' it works good
343: [07:52:29] <ss23> what is "application_env"?
344: [07:53:29] * veb has joined #silverstripe
345: [07:55:00] * r_hector quit (Remote host closed the connection)
346: [08:03:06] * simon_w quit (Ping timeout: 272 seconds)
347: [08:03:22] * kinglozzer has joined #silverstripe
348: [08:03:38] <ss23> Okay, so looks like there's a bug in the ShortcodeParser
349: [08:04:07] <ss23> <script>els[1].style.cursor = opts.cursorReset;</script> gets changed to <script>els<img class="--ss-shortcode-marker" data-tagid="0" />.style.cursor = opts.cursorReset; </script>
350: [08:04:30] <ss23> seems to think that [1] is an image or something, but uses those internal markers that it never gets rid of
351: [08:04:41] <ss23> Should we take bets on who git blame says wrote this class?
352: [08:05:21] <Kingy^> ss23: that's my issue
353: [08:05:25] <ss23> :O
354: [08:05:26] <ss23> wow
355: [08:05:26] <Kingy^> what i was talking about earlier
356: [08:05:35] <Kingy^> wanting to stop shortcodes happening
357: [08:05:37] <ss23> I can't turn off parsing completely cause I need [link] to work
358: [08:06:36] <ss23> "Shortcode parser sucks" is probably not a helpful bug report
359: [08:06:51] <Kingy^> lawl
360: [08:07:49] * Sticks quit (Quit: Leaving)
361: [08:15:00] * mobiusnz1 quit (Quit: Leaving.)
362: [08:27:25] * veb quit (Quit: veb-irc: &)
363: [08:27:34] * Pymndk has joined #silverstripe
364: [08:31:00] * veb has joined #silverstripe
365: [08:31:59] * simon_w has joined #silverstripe
366: [08:39:29] * swaiba has joined #silverstripe
367: [08:59:53] <Pymndk> \o swaiba :>
368: [09:00:21] <swaiba> o/ Pymndk
369: [09:02:13] * ss-helper quit (Ping timeout: 264 seconds)
370: [09:02:34] * ss-helper has joined #silverstripe
371: [09:04:40] * bemusedrat has joined #silverstripe
372: [09:15:05] <Mike123> still i can't figure it out, i'm using https://github.com/sheadawson/silverstripe-blocks module , i need to add block to DataObjects too, anyone can help ?
373: [09:21:13] * Cramb has joined #silverstripe
374: [09:22:06] * Cramb has left #silverstripe
375: [09:22:14] * Cramb has joined #silverstripe
376: [09:25:27] * Cramb has left #silverstripe
377: [09:28:15] * simon_w quit (Ping timeout: 248 seconds)
378: [09:28:45] <Pymndk> Mike123: exactly the same. Page is just a DataObject after all ;)
379: [09:28:56] <Pymndk> well, it should be the same. I don't have the time to look into it sorry
380: [09:29:59] <Pymndk> kinglozzer: why does hasAction get $this->allowedActions() then proceed to try to do (what looks like) exactly the same thing again manually if it returns null?
381: [09:31:13] <kinglozzer> Pymndk: huh?
382: [09:32:00] <kinglozzer> Controller::hasAction()? Or RequestHandler?
383: [09:32:15] <kinglozzer> Looks like Controller is looking for private static, then checking for MyController_actionname.ss templates
384: [09:39:41] * UncleCheese has joined #silverstripe
385: [09:43:22] * UncleCheese quit (Client Quit)
386: [09:45:17] <Pymndk> kinglozzer: RequestHandler
387: [09:45:37] * simon_w has joined #silverstripe
388: [09:46:16] <Pymndk> it gets an inherited array of all allowed_actions (which obviously includes the current requesthandler too), but then if it's not an array (ie, no allowed_actions) it re-checks the current requesthandler directly (uninherited & no extensions, just in case that makes a difference for some reason)
389: [09:46:26] <Pymndk> seems a bit ... silly.
390: [09:48:33] * veb quit (Quit: veb-irc: &)
391: [09:55:04] * terryapodaca has joined #silverstripe
392: [10:01:18] <Pymndk> kinglozzer: So yeh, redundant. Weird. Not sure wtf. Any insights?
393: [10:01:33] <Pymndk> or just code rot?
394: [10:01:57] <terryapodaca> Hey guys, I have a DataObject called Announcement (it's a site wide announcement that can possibly show up on the HomePage or possibly another page or two, we are still discussing that)
395: [10:01:58] * darjus01 has joined #silverstripe
396: [10:02:34] <terryapodaca> I'm managing the Announcement in a AnnouncementAdmin (modeladmin) so it's on the left side of the CMS
397: [10:02:53] <terryapodaca> I'm trying to get these to show up on the HomePage for now
398: [10:03:12] <kinglozzer> Pymndk: Hmm idk, does git blame tell you?
399: [10:03:29] <terryapodaca> I have a has_many => 'Announcements' => 'Announcement'
400: [10:03:37] <terryapodaca> on the HomaPage
401: [10:04:15] <terryapodaca> and a $has_one = 'HomePage' => 'HomePage'
402: [10:04:22] <terryapodaca> on the Announcement DO
403: [10:04:58] * Stomach quit (Quit: zzz)
404: [10:05:51] <terryapodaca> but, how can I save the homepageID without having to make them always select the homepgae from a SiteTreeDropdownField?
405: [10:05:58] <Pymndk> terryapodaca: nah, don't want a relation at all.
406: [10:07:12] <terryapodaca> so you think it would be more simple to create a simple method to get the Announcements instead of letting the relations do it?
407: [10:08:19] <Pymndk> terryapodaca: well they're site wide, can display on any page. Provided you only manage a single site then yeah it makes sense. If you have many (subsites) then associate it to a SiteConfig and yeh, just use a getter.
408: [10:08:24] <Pymndk> Announcement::get()
409: [10:15:49] * simon_w quit (Ping timeout: 244 seconds)
410: [10:16:03] <terryapodaca> ok..ok...makes sense
411: [10:20:31] <Pymndk> Then they're not bound to a page and you don't have to fiddle around updating bidings, etc.
412: [10:20:31] <Pymndk> :>
413: [10:23:23] <Mike123> it's raining :( i hate rain
414: [10:23:45] <Pymndk> Good thing you don't live in England.
415: [10:30:24] * guci0 has joined #silverstripe
416: [10:30:30] <guci0> Hello World!
417: [10:30:41] <Pymndk> hello guci0 !
418: [10:43:12] * babak quit (*.net *.split)
419: [10:43:13] * BackEndCoder quit (*.net *.split)
420: [10:44:44] * BackEndCoder has joined #silverstripe
421: [10:47:02] * babak has joined #silverstripe
422: [10:51:01] <Mike123> get get it right with those Blocks :///
423: [11:00:20] * UncleCheese has joined #silverstripe
424: [11:02:22] <Mike123> aaaa help me someone :D i'm getting nuts
425: [11:02:49] * UncleCheese quit (Client Quit)
426: [11:03:46] <swaiba> Mike123 - still raining?
427: [11:05:24] * UncleCheese has joined #silverstripe
428: [11:06:16] <Mike123> swaiba , yes :D but the problem i'm dealing with is that i cant make Blocks module configure to use in DataObject's
429: [11:07:02] <swaiba> Mike123 wish I could help, here I was forced into making a custom widget system before there was an alternative
430: [11:08:01] <Mike123> :O omg
431: [11:10:35] <Pymndk> Mike123: what is your _specific_ problem?
432: [11:10:51] <llliit> what do you guys use widgets for
433: [11:10:56] <llliit> are we talking CMS side or front end
434: [11:11:28] <Pymndk> well it's the same thing -.-
435: [11:11:52] <llliit> depends on the kind of work i guess
436: [11:12:15] * Colin[pi] quit (Ping timeout: 248 seconds)
437: [11:14:33] <Pymndk> Mike123: the blocks module you're using is built specifically for pages
438: [11:14:46] <Pymndk> and makes use of contentcontroller extensions also.
439: [11:15:04] <Pymndk> having it on plain dataobjects means that contentcontroller stuff doesn't come into it.
440: [11:15:12] <Pymndk> this makes it rather hard if it relies on it.
441: [11:16:49] <Mike123> Pymndk , so u'r saying that there is no solution for me ?
442: [11:18:01] <Pymndk> I'm saying you should look at others. I don't know what you're trying to achieve, and why you need it on dataobjects, etc.
443: [11:18:05] <Pymndk> Only you can make that call.
444: [11:18:29] <Pymndk> There might be a way to use it on dataobjects directly, but you'll have to inspect and understand the module's method of operation first.
445: [11:18:45] * gordon has joined #silverstripe
446: [11:19:13] * gordon is now known as Guest18734
447: [11:20:14] * micmania1 quit (Quit: micmania1)
448: [11:20:57] <Mike123> Pymndk , i'm trying to add a possibility for user to add blocks to DataObjectAsPage ....
449: [11:23:14] <Pymndk> why not just use page?
450: [11:23:29] <Pymndk> maybe lumberjack could help you instead?
451: [11:23:57] <Mike123> because if it will have 100 pages it will be laggy
452: [11:24:02] <Mike123> lumberjack ?
453: [11:24:40] * DimiStripe has joined #silverstripe
454: [11:24:58] <adrexia> https://github.com/micmania1/silverstripe-lumberjack
455: [11:25:21] <Mike123> oh..
456: [11:25:59] <adrexia> so the opposite to what you are currently doing I think :)
457: [11:27:23] <adrexia> There are other blocks modules out there too, but it depends what you are after/what you are trying to achieve
458: [11:27:42] <Mike123> well i have already done everything , so i think no change to remake everything now :/ need to extend Blocks module i think
459: [11:29:38] * adrexia nods
460: [11:29:54] <adrexia> it could be difficult depending on how its built
461: [11:30:30] <adrexia> the fact it's plugged into page versioning throws some red flags for the ability to extend it for DataObjects
462: [11:30:58] <adrexia> But if you do, please share the result :D
463: [11:31:09] <Mike123> :)
464: [11:47:10] * bemusedrat quit (Quit: Leaving)
465: [11:50:18] * frostfire64 has joined #silverstripe
466: [11:50:33] <frostfire64> quick question
467: [11:51:04] <frostfire64> does anyone know of a module that would allow me to set a specyfic template to render a page?
468: [11:51:32] <frostfire64> i know i can create a new page type but creating a new page type just so i can render a bit different page seems a bit of an overkill to me
469: [11:55:12] <Pymndk> frostfire64: no. that is not how SS works.
470: [11:55:41] <frostfire64> sigh.. i guess i wanted a tad bit too much ;p
471: [11:55:46] <Pymndk> You could implement the functionality reasonably easily, but I'm not aware of any module
472: [11:55:50] <Mike123> https://github.com/silverstripe/silverstripe-widgets hoow about this module ? does it gives possiblity to add widgets to a DataObjects ?
473: [11:56:12] <Pymndk> Mike123: I think so, but again it originated from pages.
474: [11:56:15] <frostfire64> this site is too small to go with it
475: [11:56:30] <Pymndk> frostfire64: eh?
476: [11:57:02] <frostfire64> i mean the design is not modular enough to go with widgets
477: [11:57:16] <frostfire64> the templating engine itself will be good enough
478: [11:57:17] <Pymndk> frostfire64: no Mike123 is talking about his own problems ;)
479: [11:57:23] <frostfire64> aaah sorry ;p
480: [11:58:29] <Pymndk> IMO if a page needs another template, then it is a different type. But you could maybe use injector to mess about with stuff, and/or simply implment a 'theme chooser' per page.
481: [11:58:36] <Pymndk> ie, one that doesn't change theme, but template.
482: [11:59:16] <Pymndk> you could use action templates and mangle up the handleAction to use them (when they're not actually actions) or something.
483: [11:59:17] <Pymndk> idk.
484: [11:59:28] <Pymndk> many possibilities, but nothing immediately available afaik.
485: [11:59:41] <Pymndk> It's semi-frequent question though, there might be somethnig around.
486: [12:04:54] <frostfire64> too much risk (exposing internal workings of the site to the client that he can break by missconfiguration) in comparsion to reward (less of a hassle when changing creating pages with different layouts)
487: [12:04:57] * lerni_ has joined #silverstripe
488: [12:10:37] * Kingy^ is now known as Kingy[a]
489: [12:11:15] <DimiStripe> Hey guys. Weird question. On first load any page on site always scrolls to the bottom . JS is disabled , so its only HTML+CSS (Bootstrap). Once CSS is cached - everything works fine. Any hints WTF this could be ?
490: [12:17:20] <DimiStripe> Just tried removing ALL JS and keeeping only Bootstrap CSS (clean new version) - still on load site shows bottom ...
491: [12:17:31] <DimiStripe> Are there any HTML elements maybe that are doing this ?
492: [12:20:30] <Pymndk> anchor in url?
493: [12:20:47] <Pymndk> yoursite/page#gototheverybottom ?
494: [12:23:35] <DimiStripe> Huh, found it :) it's an "autofocus" on one of the elements in popup form div (which resides at the end of the body and is not displayed untill called with JS). So even tho the whole div popup has display:none - it still reacts to autofocus bringing the page down on load ....
495: [12:23:45] <darjus01> hi all how to add boolean to dropdownfield in silverstripe
496: [12:23:46] <darjus01> ?
497: [12:24:34] <DimiStripe> darjus01: you mean Yes/No ?
498: [12:24:41] <darjus01> yes
499: [12:25:41] <DimiStripe> 3rd parameter - array with values
500: [12:26:08] <DimiStripe> array(
501: [12:26:08] <DimiStripe> '1' => 'Yes',
502: [12:26:08] <DimiStripe> '0' => 'No',
503: [12:26:08] <DimiStripe> )
504: [12:26:44] <darjus01> ok thx
505: [12:27:06] <DimiStripe> I dont see you one skype ;)
506: [12:27:06] <DimiStripe> :D
507: [12:27:17] <darjus01> invisible :D
508: [12:27:22] <DimiStripe> oki
509: [12:28:19] * UndefinedOffset has joined #silverstripe
510: [12:35:43] * UncleCheese quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
511: [12:36:01] * swaiba_ has joined #silverstripe
512: [12:38:22] * swaiba quit (Ping timeout: 276 seconds)
513: [13:07:42] <Mike123> Widgets also dont support DO :/
514: [13:08:47] <Pymndk> Yeah, since the point of block type modules is for building pages, they tend to only work for Page type objects.
515: [13:09:03] <Pymndk> I really think lumberjack is the way to solve your problem.
516: [13:09:27] <Pymndk> that way you can use actual pages, but keep them out of the site tree (like the most recent edition of the blog module does).
517: [13:09:55] <Pymndk> you get all the benefits, like iscurrent, url generation, etc.
518: [13:10:05] <Pymndk> automatic routing
519: [13:14:33] <Mike123> but i already use this module: https://github.com/arambalakjian/DataObject-as-Page, and i ahve done few modules with it
520: [13:17:37] <Mike123> but i dont understand why ... dataobject is rendered as page , it has its template it should work ok
521: [13:22:28] * frostfire64 quit (Ping timeout: 252 seconds)
522: [13:22:38] * cupcake has joined #silverstripe
523: [13:22:45] <cupcake> hey
524: [13:22:49] <Pymndk> hi
525: [13:22:57] <cupcake> has anybody had issues with focuspoint for landscape images?
526: [13:23:04] <cupcake> for me it doesnt seem to work correctly
527: [13:23:17] <cupcake> its resizing the image and then trying to focus
528: [13:23:26] <cupcake> and not cropping around the focus point
529: [13:32:40] * ss-helper quit (Remote host closed the connection)
530: [13:32:55] * ss-helper has joined #silverstripe
531: [13:33:07] * marvanni has joined #silverstripe
532: [13:34:09] * Guest18734 quit (Quit: Leaving)
533: [13:34:59] <Pymndk> never used it sorry cupcake
534: [13:48:58] <swaiba_> cupcake obviously raise on the repo, jonom is a good guy he will help
535: [13:49:06] <swaiba_> my guess is that you are actually overiding
536: [13:50:23] <swaiba_> the image quality somewhere else and this is happening before you get a chance to adjust the focus
537: [13:54:07] * muskie9 has joined #silverstripe
538: [14:03:11] <cupcake> something is wrong in the generateCroppedFocusedImage function
539: [14:03:13] <cupcake> because
540: [14:03:28] <cupcake> if my focus point is at the bottom right
541: [14:03:37] <cupcake> how are the values top 20 left 0
542: [14:03:54] <cupcake> the full image is being passed to the function so its not resized before hand
543: [14:08:41] * spronk quit (Quit: I may need a longer sleep timer...)
544: [14:13:35] * muskie9 quit (Read error: Connection reset by peer)
545: [14:15:46] <DimiStripe> cupcake: i used this module in several projects and it seems to be working just perfectly
546: [14:16:15] * sminnee has joined #silverstripe
547: [14:16:33] * sminnee_ has joined #silverstripe
548: [14:17:13] <DimiStripe> However - i think what you're talking about is not an issue but designed thing - the image gets cropped around the focus point just to fit your dimensions
549: [14:20:19] * sminnee quit (Ping timeout: 246 seconds)
550: [14:20:19] * sminnee_ is now known as sminnee
551: [14:23:44] * muskie9 has joined #silverstripe
552: [14:25:18] * darjus01 quit (Read error: Connection reset by peer)
553: [14:26:00] <Pymndk> hullo sminnee
554: [14:32:15] * sminnee quit (Quit: sminnee)
555: [14:33:51] * sminnee has joined #silverstripe
556: [14:37:32] * sminnee_ has joined #silverstripe
557: [14:37:33] <sminnee_> [Sam Minnée, silverstripeltd] Hello Pymndk!
558: [14:38:08] <sminnee_> [Sam Minnée, silverstripeltd] I’m trying out Slack <-> IRC integration with <http://sameroom.io|sameroom.io>
559: [14:39:58] <sminnee> I’m here twice, sminnee_!
560: [14:40:11] * benjhocking1 has joined #silverstripe
561: [14:41:00] <swaiba_> sminnee sminnee_ will the real sminnee please stand up
562: [14:41:01] * muskie9 quit (Read error: Connection reset by peer)
563: [14:41:12] <sminnee_> [Sam Minnée, silverstripeltd] *stands up*
564: [14:41:15] <sminnee> *stands up*
565: [14:41:19] <sminnee> oh
566: [14:41:19] <swaiba_> lol
567: [14:41:20] <sminnee_> [Sam Minnée, silverstripeltd] oh
568: [14:41:38] <sminnee> You’re not—
569: [14:41:41] <sminnee_> [Sam Minnée, silverstripeltd] —the real me!
570: [14:42:15] * benjhocking quit (Ping timeout: 256 seconds)
571: [14:47:30] * PenguinMan98 has joined #silverstripe
572: [14:48:13] * PenguinMan98 flops into the room fresh.. ish from the weekend
573: [14:49:09] <PenguinMan98> I want to ask the guys who use silverstripe a lot and are comfortable with its architecture how they would approach the problem of a client who wants dynamic custom menus
574: [14:50:12] <cupcake> DimiStripe didnt understand you
575: [14:50:29] <PenguinMan98> How can I clarify?
576: [14:50:58] <PenguinMan98> I need an interface the user can use to create a dynamic custom hiearchical menu system
577: [14:51:20] <PenguinMan98> Wordpress comes with this functionality and they like it.
578: [14:51:36] <PenguinMan98> We want to move them to SS but we need this feature
579: [14:52:01] * wolfie__ has joined #silverstripe
580: [14:52:44] <wolfie__> Hi there, newbie here; just getting started in Silverstripe
581: [14:52:54] <PenguinMan98> newbie high five
582: [14:53:48] <swaiba_> PenguinMan98 - DataObjects - the universal answer to everything
583: [14:54:22] <PenguinMan98> swaiba_: I have the system planned out on paper and I have the data objects built out to hold them. I'm at the point where I need an interface.
584: [14:54:45] <wolfie__> Hi Penguinman: I need a quick fix not sure how to go about it. i need to desparately add a light box kind of thing on the landing page of the my website which all visitir should see before they click proceed to the site
585: [14:55:16] <PenguinMan98> Wolfie, You can use sessions for that, or cookies.
586: [14:55:18] <swaiba_> PenguinMan98 ok, then you are looking to edit the templates that make menus and where it would normally do all the silverstripe stuff based on the sitetree - rip it out and place your code there
587: [14:55:36] <sminnee_> [Sam Minnée, silverstripeltd] Penguinman: for the presentation of it, I would choose your favour JS/CSS library and include it in your template.
588: [14:56:21] <PenguinMan98> swaiba_: I was looking to add mine like a module so we don't break the existing functionality. If that's possible
589: [14:57:04] <sminnee_> [Sam Minnée, silverstripeltd] PenguinMan98 that should be fine. You could have a DataExtension that plugs into SiteTree to add a DynamicMenu method, that returns an appropriate DataList.
590: [14:57:07] <swaiba_> PenguinMan98 - what sminnee_ just said. Take the tempaltes you want to change and put them in your module and they override the default ones
591: [14:57:52] <wolfie__> Penguinman, you mean its not possible off the CMS
592: [14:57:56] <PenguinMan98> sminnee_: I've got the solution mostly written in jQuery but I'm not sure how to break out of the silverstripe back end / forms and write in my custom interface.
593: [14:58:37] <sminnee> PenguinMan98: for the administration of the content I would just use GridFields or something.
594: [14:58:50] <sminnee> For the front-end, there shouldn’t be anything to “break out of"?
595: [14:59:11] <PenguinMan98> sminnee: can gridfields be extended to add drag/drop functionality? And this is not a front end thing.
596: [14:59:41] <sminnee> what’s the menu for?
597: [15:00:01] <PenguinMan98> The menu on the front side just displays the hierarchy of links and the footer nav
598: [15:00:12] <PenguinMan98> But on the back side I need to build an interface to build it.
599: [15:00:15] <Pymndk> sminnee: doing your best slim shady impression?
600: [15:00:19] * wolfie___ has joined #silverstripe
601: [15:00:23] <sminnee> https://github.com/silverstripe-australia/silverstripe-gridfieldextensions provide a grid field drag & drop reorder thign.
602: [15:00:46] <PenguinMan98> I already have those but I need more than just ordering
603: [15:00:56] <PenguinMan98> I need to establish hierarchy
604: [15:01:02] <sminnee> oh right.
605: [15:01:14] <Pymndk> then gridfield is probably not your tool if you want to do it all on one screen, unfortunately.
606: [15:01:20] <wolfie___> Any other way to add a clickable notice or light box on the site landing page
607: [15:01:21] <sminnee> if you want to do your own interface, the best bet is to implement it as a custom subclass of FormField.
608: [15:01:44] <Pymndk> wolfie___: 'other' way?
609: [15:01:59] <PenguinMan98> A custom subclass of FormField hmmm?
610: [15:02:14] <PenguinMan98> Hang on, I need to step AFK for a bit
611: [15:02:17] <PenguinMan98> thank you for your help
612: [15:02:19] * wolfie__ quit (Ping timeout: 246 seconds)
613: [15:02:21] <sminnee> yeah. Implement FieldHolder() in the class, have it return the result of a template
614: [15:02:25] * PenguinMan98 is now known as pengy-away
615: [15:02:30] <Pymndk> PenguinMan98: you're basically after the site tree functionality right? but with your own custom data objects in their own clustered context?
616: [15:02:45] <pengy-away> Pymndk: Yes, exactly
617: [15:02:57] <wolfie___> Pymndk i want do add a a light box sort of funtionality on the home page yes
618: [15:02:58] <Pymndk> pengy-away: so I'd basically look at how that's built, and re-do it.
619: [15:03:17] <Pymndk> wolfie___: so that's front end stuff right?
620: [15:03:22] <wolfie___> yes
621: [15:03:35] <Pymndk> well you just use a javascript library. There are many that do this.
622: [15:03:52] <wolfie___> never worked woth silverstripe this is my day 1
623: [15:03:57] * kb has joined #silverstripe
624: [15:04:14] <Pymndk> wolfie___: well basically you have templates that are just (mostly) plain HTML.
625: [15:04:21] * kb is now known as Guest39789
626: [15:04:35] <Pymndk> wolfie___: if this is day 1 then I recommend checking out the tutorials. They will be of immense help.
627: [15:04:46] <sminnee> pengy-away: In fact, by default <classname>.ss will be used to render the form field so you can just creat that, once you have a new FormField subclass. You can requre your JS and CSS in there using <% require javascript(bla) %> or <% require css(bla) %>. As long as you use those codes to load the CSS, the lazy-loading stuff will work.
628: [15:05:08] <Guest39789> are there any freelancers in this channel?
629: [15:05:12] <Pymndk> Guest39789: yes.
630: [15:05:33] <wolfie___> @pmyndk the templates are builtt within SS
631: [15:06:27] <Pymndk> wolfie___: the tutorials will help you understand, but basically copy it into the current theme (or 'mysite') and edit it. They have an inclusion heirarchy, your re-implmentation should override the default.
632: [15:07:04] <Pymndk> wolfie___: also please don't use @ prefixes - I get alerted that you're addressing me if you don't, and do not get an alert if you do.
633: [15:07:40] <wolfie___> pmyndk ok, any links to asch js libraries
634: [15:07:59] <Pymndk> wolfie___: also a tip: if you press py then press tab, you'll autocomplete my name.
635: [15:08:05] <Pymndk> _then_ I'll be alerted ;)
636: [15:08:12] <Pymndk> (when it's spelt right)
637: [15:08:30] <wolfie___> Pymndk: sure thing i am new to this stuff steep curve
638: [15:08:49] <Pymndk> yep, but that's why we're here, to (hopefully) help you learn!
639: [15:10:02] <wolfie___> Pymndk: so does SS work link other CMS e.g drupal or joomla like, like install module and boom off your go
640: [15:10:22] <Pymndk> it can do. But it doesn't work anything like those other two.
641: [15:10:40] <Pymndk> addons.silverstripe.org
642: [15:11:06] <wolfie___> Pymndk: do u have a link to any of the javascript libraries you hinted i need to copy to the framework folder ?
643: [15:11:07] <Pymndk> Silverstripe is more of a developer's CMS, things are defined in code rather than through an admin type interface.
644: [15:11:17] <Pymndk> The CMS is purely for editing _content_ (the C in CMS)
645: [15:11:30] <Pymndk> wolfie___: fancybox
646: [15:11:42] <Pymndk> version 2 requires a lisence, version 1 does not (but should still work ok)
647: [15:12:01] <Pymndk> otherwise there's bootstrap, foundation, many other massive UI toolkits.
648: [15:12:16] <Pymndk> just google 'javascript lightbox' and you'll find _many_
649: [15:12:50] <Mike123> Pymndk, about those block, i need some sort of workaround
650: [15:12:52] <marvanni> so, Silverstripe seems to randomly decide to present a has_one relation fields as a textfield instead of a dropdown?
651: [15:13:15] <Pymndk> marvanni: huh?
652: [15:13:25] <wolfie___> Pymndk: thanks cheers !!
653: [15:14:01] <DimiStripe> Guest39789: and yes :)
654: [15:14:03] <marvanni> yeah, that what I thought… I have a DO with like 5 has_one’s. the related object have the same structure. but two of them are not dropdowns….
655: [15:14:16] <marvanni> in the modeladmin, i mean.
656: [15:14:23] <Pymndk> marvanni: are they scaffolded?
657: [15:14:28] <marvanni> yes
658: [15:14:29] <Pymndk> or are you defining?
659: [15:14:31] <Pymndk> hmm
660: [15:14:36] <Pymndk> weird indeed
661: [15:14:44] <Pymndk> are they cast?
662: [15:14:52] <marvanni> 'Consultant' => 'Member',
663: [15:14:59] <marvanni> has_one. is a textfield...
664: [15:15:29] <marvanni> not casting array is set.. just a regular static db, has_one…
665: [15:15:48] <marvanni> but this one is a dropdown : 'JobAdCategory' => 'JobAdCategory',
666: [15:16:06] <marvanni> never had this before...
667: [15:16:48] <Pymndk> marvanni: does the site have a whole lot of members?
668: [15:17:14] <marvanni> 148
669: [15:17:21] <Pymndk> right, that's probably it then.
670: [15:17:28] * muskie9 has joined #silverstripe
671: [15:17:56] <marvanni> guess your right….
672: [15:18:24] <marvanni> But then I would expect an ajax lookupfield.. :)
673: [15:18:31] <Pymndk> iirc (not 100%) the cms uses jquery.chozen by default - and the scaffolder knows this. So things with a large number of relations to choose from render as a generic input (text field) and with chozen applied hen you type it shows suggestions from the list.
674: [15:18:34] <Pymndk> by title by default
675: [15:18:49] <Pymndk> if there are a more managable number suitable for a dropdown, chozen renders a dropdown.
676: [15:18:53] <Pymndk> or something like that.
677: [15:19:02] <Pymndk> again, not 100%
678: [15:19:19] <Pymndk> but I seem to have some kind of memory of someone else having a similar issue a number of years back./
679: [15:20:09] <Pymndk> not 100% sure though.
680: [15:20:31] <Pymndk> sminnee: owa ol' blighty atm?
681: [15:21:03] <marvanni> Yeah, its in ForeignKey fieldtype :
682: [15:21:11] <sminnee> yeah, going to phpconference.nl, so I’ll be in Amsterdam from tomorrow
683: [15:21:17] <marvanni> if($list->count() < 100) {}else{new NumericField}
684: [15:21:18] <Pymndk> oh yeh
685: [15:21:31] <Pymndk> gaan come visit the north east any time?
686: [15:21:48] <marvanni> And after that to the meetup :)
687: [15:21:55] <marvanni> in the red light district
688: [15:22:43] <Pymndk> marvanni: mm, there ya go :<
689: [15:23:40] <marvanni> so, now I know :). no problem, the DO is gonna be popuplated with CurrentMember, so that will work
690: [15:25:28] * arnhoe quit ()
691: [15:28:06] * Mike123 quit (Quit: Page closed)
692: [15:28:43] <pengy-away> sminnee: Thanks. I'm reading what you said and I think I need some clarification on which <classname>.ss I should be copying and where I can find it
693: [15:28:44] <Guest39789> anyone have some experience with creating a front-end editing environment
694: [15:30:05] * pengy-away is now known as PenguinMan98
695: [15:30:24] <sminnee> pengy-away: you’ll need to make your own class. The template should be <classname>_holder.ss, sorry, and you could use framework/templates/forms/FormField_holder.ss as a starting point if you want?
696: [15:32:06] <PenguinMan98> hmmmm
697: [15:32:21] <PenguinMan98> why the _holder?
698: [15:32:44] <sminnee> because
699: [15:32:57] <Pymndk> magic
700: [15:33:09] <sminnee> because FormField::getFieldHolderTemplates() specifies it in its default implementation
701: [15:33:28] <PenguinMan98> err.. ok
702: [15:33:48] * catcher has joined #silverstripe
703: [15:33:49] <PenguinMan98> I'm now copying FormField_holder.ss to 'CustomHMenu_holder.ss
704: [15:33:59] <sminnee> <classname>.ss would be used for $Field, rather than $FieldHolder, which would leave the field label and row and things in place, which is less useful if you’re trying to make your own editing component.
705: [15:35:08] <PenguinMan98> I now have mysite/code/CustomHMenu_holder.ss
706: [15:35:31] <PenguinMan98> How do I invoke it?
707: [15:35:46] <Pymndk> PenguinMan98: mysite/templates/CustomHMenu_holder.ss
708: [15:36:05] <Pymndk> and you don't, let SS do it's magic.
709: [15:36:23] <Pymndk> (you subclassed FormField, it should find it by itself after you ?flush)
710: [15:36:24] <PenguinMan98> I know I don't need to write includes
711: [15:36:30] <Pymndk> includes?
712: [15:36:49] <PenguinMan98> I haven't subclasses FormField yet
713: [15:37:03] <Pymndk> well you'll need to do that first.
714: [15:37:26] <Pymndk> You're making a new FormField after all!
715: [15:38:15] <Pymndk> templates generally load by classname. You can manually call $this->renderWith() to force an instant render with any template (passed as parameter)
716: [15:38:49] <Pymndk> did you watch the tutorials yet PenguinMan98?
717: [15:38:58] <PenguinMan98> I have but I still feel a bit overwhelmed
718: [15:39:16] <PenguinMan98> I've now created mysite/forms/CustomHMenu.php by copying FormField.php
719: [15:42:09] <Pymndk> well... that's one way of doing it. It's probably easier to have formfield open (or the api page open) in another tab/pane and implement your subclass from empty
720: [15:42:36] <Pymndk> You only need a few things.
721: [15:47:07] * wolfie___ quit (Ping timeout: 246 seconds)
722: [15:47:26] <PenguinMan98> ok
723: [15:48:02] <ss-helper> SilverStripe docs website errors. - https://groups.google.com/d/msg/silverstripe-dev/8UKVtaQy3e4/StyclAlflmQJ
724: [15:50:07] <PenguinMan98> I'm getting confused with all these classes having similar names
725: [15:50:41] <PenguinMan98> Is there a convention for what to name my form so it doesn't collide with my controller?
726: [15:52:08] <PenguinMan98> Pymndk: As with all framework solutions, as long as you're doing something the framework was built to do it's smooth sailing. The moment you need something custom is when the real programming starts.
727: [15:52:40] <PenguinMan98> I now have CustomHMenuForm extends FormField
728: [15:53:07] <PenguinMan98> I'm pulling up the tutorials to learn more about how to do this
729: [15:53:51] <PenguinMan98> But the lessons only cover frontend forms
730: [15:56:03] <Pymndk> PenguinMan98: the framework IS built to do this.
731: [15:56:06] <Pymndk> it IS smooth sailing.
732: [15:56:14] <Pymndk> the issue is more that you're not familiar with it.
733: [15:56:22] <Pymndk> that's hard going in _any_ system, framework or not.
734: [15:56:28] <PenguinMan98> And the Javascript Development page is remarkably unhelpful, giving details about how to write jQuery code instead of where to put it in the cms
735: [15:56:44] <Pymndk> Be like if I gave you a great system in COBOL, you'd (probably) be naffed.
736: [15:56:50] * PenguinMan98 nods
737: [15:57:15] <PenguinMan98> I'm under a lot of pressure to get this done quickly and I'm a little frazzled. Sorry if I'm a pain.
738: [15:57:33] <PenguinMan98> And yes, I'm unfamiliar
739: [15:57:36] <Pymndk> yeah but your boss (as previously expressed many times) is a silly person.
740: [15:57:52] <PenguinMan98> Be that as it may,
741: [15:57:55] <Pymndk> him snapping his fingers isn't going to make it get done any faster
742: [15:58:00] <PenguinMan98> I still need to get this working
743: [15:58:18] <PenguinMan98> I have a solution written in plain html/javascript
744: [15:58:27] <PenguinMan98> I just need to plug it into the CMS
745: [15:58:56] <PenguinMan98> I've alreadu built the data objects
746: [15:59:06] <PenguinMan98> That part was easy
747: [16:00:08] <Pymndk> right. Well read kinglozzer's tutorial on entwine.
748: [16:00:16] <PenguinMan98> what is entwine?
749: [16:00:16] <Pymndk> takeaway.bigfork.co.uk
750: [16:00:19] <Pymndk> js lib
751: [16:00:22] <Pymndk> jquery lib*
752: [16:00:28] <Pymndk> powers the cms
753: [16:00:29] <PenguinMan98> Why do I need it?
754: [16:00:31] <Pymndk> powers the cms
755: [16:00:32] <PenguinMan98> oh
756: [16:01:15] * muskie9_ has joined #silverstripe
757: [16:02:29] * Alan_ has joined #silverstripe
758: [16:02:39] * muskie9 quit (Read error: Connection reset by peer)
759: [16:02:53] * Alan_ is now known as Guest70709
760: [16:03:09] <PenguinMan98> Well, I'll sharpen my axe a bit
761: [16:03:11] <Pymndk> http://takeaway.bigfork.co.uk/a-beginners-introduction-to-using-entwine-in-silverstripe
762: [16:03:13] <PenguinMan98> thanks
763: [16:03:51] * swaiba_ quit (Remote host closed the connection)
764: [16:04:16] <Pymndk> It's not difficult, just a slight adjustment in the way you think about things.
765: [16:04:44] <PenguinMan98> I appreciate your patience with me. My head doesn't adjust how it thinks about things as easily as I'd like
766: [16:05:14] <Guest70709> I have a silverstripe upload.php framework file on my webserver, are there any security concerns keeping it there?
767: [16:05:28] <kinglozzer> I'm gonna do a new blog post soon: "One hundred million reasons why SOAP sucks"
768: [16:06:10] <kinglozzer> Guest70709: upload.php? I don't remember ever seeing that anywhere, what's in it?
769: [16:06:37] * catcher quit (Quit: Leaving)
770: [16:07:06] <Guest70709> http://i.imgur.com/m5pYPjm.png
771: [16:07:37] <Pymndk> Guest70709: eh?
772: [16:07:40] <Guest70709> not at the office at the moment so can't login, but thats the webpage.
773: [16:07:47] <Pymndk> and?
774: [16:08:36] * muskie9_ quit (Read error: Connection reset by peer)
775: [16:08:43] <Pymndk> so by 'upload.php' you mean 'default framework splash' - not framework/filesystem/Upload.php ?
776: [16:09:53] <Guest70709> ahh, someone must have renamed it!
777: [16:10:01] <Pymndk> ??
778: [16:10:19] <Pymndk> sorry, I have no idea what you're on about.
779: [16:11:55] <Guest70709> someone changed the default splash url to upload.asp and but framework/filesystem/Upload.php is forbidden so that is good news
780: [16:12:22] <Guest70709> anyway thanks
781: [16:13:00] <Pymndk> yeah, NO idea AT ALL what you're talking about. asp and php are two VERY different systems.
782: [16:13:51] <Pymndk> you're not making any sense, but yes, upload.php is blocked by default on apache installs. If you're not using apache (or iis) then you'll need to manually secure it.
783: [16:14:33] <Pymndk> the splash is not a risk, other than letting every one know specifically which system to target if they wish to try and make it in.
784: [16:14:44] <Guest70709> yeah no worries, you said its just a splash so I will verify tomorrow and then remove it
785: [16:14:46] <Pymndk> not like that isn't a thing on most of the internet anyway.
786: [16:14:47] * catcher has joined #silverstripe
787: [16:15:02] <Pymndk> well you don't 'remove' it. You actually implement something to replace it.
788: [16:15:21] <Pymndk> But it'll be fine.
789: [16:15:42] <Guest70709> thanks, i will read the documentation
790: [16:15:43] <Pymndk> if you're really worried just make the site 404 on every request via the .htaccess in the document root.
791: [16:16:01] <Pymndk> until such time as you get far enough to replace it.
792: [16:16:20] <Guest70709> yeah .htaccess is the best approach actually, good idea
793: [16:17:34] <Guest70709> anyway cheers Pymndk
794: [16:17:37] <Guest70709> bye
795: [16:17:44] <Pymndk> you're welcome, bye
796: [16:18:05] * Pymndk quit ()
797: [16:18:13] * kinglozzer quit ()
798: [16:19:57] <PenguinMan98> OK. So if I'm understanding correctly, I'm going to create a new custom formfield and add it to the CMS so I can then build the editor using that formfield.
799: [16:19:58] * lerni_ quit (Remote host closed the connection)
800: [16:20:19] <PenguinMan98> And the formfield gives me a template to use
801: [16:20:42] <PenguinMan98> I can write all my custom code and javascripts in that template
802: [16:21:46] * Guest70709 quit (Ping timeout: 246 seconds)
803: [16:22:37] * hp101 has joined #silverstripe
804: [16:23:52] <hp101> hi all, given this statement: "$items = $this->Menu($level);" is there a way to access the children of any given member of $items? thank you
805: [16:24:31] <hp101> I am looking to do something along the lines of items[1].getChildren(), for example
806: [16:24:43] <PenguinMan98> var_dump $items and see what's in it?
807: [16:24:56] * CodeTrap has joined #silverstripe
808: [16:25:26] <hp101> I did, unfortunately wasn't able to find any reference to anything that seemed to do with children unfortunately
809: [16:26:03] <hp101> is there maybe a function that I could use to get children by the page's ID? because the ID does seem to be present
810: [16:26:17] <PenguinMan98> Maybe try this: http://php.net/manual/en/function.get-class-methods.php
811: [16:35:25] * cupcake quit (Ping timeout: 246 seconds)
812: [16:38:47] <Guest39789> i'm looking for someone that can create a front-end editing environment, so that it's possible to easily change or add the content/projects from the front-end Someone any experience with this???
813: [16:39:37] <PenguinMan98> One of the strengths of Silverstripe is the ability to have a managed tiered editing environment so you can only give permissions to edit certain things to certain people.
814: [16:40:12] <PenguinMan98> Why try to rewrite that on the front side?
815: [16:52:36] <marvanni> Because the CMS is sometimes just not flexible enough when you want visitors to manage a lot of data.
816: [16:53:07] <marvanni> Building a JobBoard with Candidates and Employers who can post jobs etc. Good luck building that in the CMS
817: [16:53:45] <PenguinMan98> I may still be new to this but that sounds a lot easier than what I'm trying to do
818: [16:53:50] <marvanni> I did quite a lot frontend dashboards, its doable
819: [16:54:53] <marvanni> and sometimes you just want this : https://almsaeedstudio.com/AdminLTE
820: [16:55:47] <PenguinMan98> wow, that's involvede
821: [16:56:52] <marvanni> But I rather just use Laraval for that ;)
822: [16:57:22] <marvanni> but it can be done in SS
823: [16:57:31] <PenguinMan98> Laravel*
824: [16:57:48] <PenguinMan98> yeah, but then you have to wrestle the behemoth that is Symfony
825: [16:58:42] <PenguinMan98> May as well use Silex for all that overhead
826: [16:59:22] <marvanni> mwoah, I worked with Symfony as well, laravel uses parts of it, but in terms of programming I don’t think its comparable
827: [16:59:41] <PenguinMan98> laravel is built on Symfony's core same as Silex
828: [16:59:56] <marvanni> and laraval has lumen as a microframework.
829: [17:00:10] <PenguinMan98> Lumen hmm?
830: [17:00:13] <marvanni> coding in laravel is much more enjoyable then in symfony if you ask me
831: [17:00:17] <PenguinMan98> I'll have to check that out
832: [17:00:28] <marvanni> check some of this : https://laracasts.com/
833: [17:00:30] <PenguinMan98> Laravel was born because symfony was such a pain
834: [17:00:40] <marvanni> i can understand that.
835: [17:01:03] <marvanni> laravel is a little bit more convention over configuration, like silverstripe
836: [17:01:14] <marvanni> compared to symfony i mean
837: [17:01:43] <marvanni> but there is no cms, not as good as silverstripe
838: [17:01:51] <PenguinMan98> My personal druthers is I'd rather avoid all CMS software over custom solutions. I can usually write them faster than I can beat them into shape for a CMS integration
839: [17:02:07] <PenguinMan98> But... clients have to use them
840: [17:02:10] <PenguinMan98> So....
841: [17:02:17] <PenguinMan98> Here I am
842: [17:02:19] <marvanni> thats why I use Silverstripe a lot
843: [17:02:47] * sminnee quit (Quit: sminnee)
844: [17:02:50] <PenguinMan98> I want to get really good at Silverstripe for this reason
845: [17:02:51] <marvanni> the cms is great, but for some complex situations, it’s sometimes hard to get simple things done
846: [17:03:14] * PenguinMan98 nods
847: [17:03:41] <PenguinMan98> As with all package code, its a sledgehammer when sometimes you only need to crack a nut
848: [17:04:06] <PenguinMan98> Anyway, enough evangelizing approaches
849: [17:04:11] <PenguinMan98> I got code to write
850: [17:04:41] <marvanni> good luck :)
851: [17:04:52] <PenguinMan98> thanks!
852: [17:05:42] * hp101 quit (Read error: Connection reset by peer)
853: [17:06:20] <PenguinMan98> Updates: I've created a CustomHMenu_Holder.ss file in mysite/templates . I've created a CustomHMenuField.php in mysite/forms and gave it a simple constructor that does nothing.
854: [17:07:14] <PenguinMan98> Now in my CustomHMenu.php, ->getCMSFields, I'm going to add a form field of type 'CustomHFormField'
855: [17:12:11] <PenguinMan98> The has many relationship with CustomHMenuItems makes its own tab. I guess I should supress it
856: [17:13:43] <marvanni> thats the scaffolders. $fields->removeFromTab(‘Root’, ‘RelationName’);
857: [17:14:02] <PenguinMan98> $fields->removeByName('HMenuItems');
858: [17:15:12] <PenguinMan98> If I'm understanding right, this is now my canvas: http://screencast.com/t/ShW6I0L6L
859: [17:29:02] <PenguinMan98> I've now created both a CustomHMenu_holder.ss and a CustomHMenuField.ss templates
860: [17:29:41] <PenguinMan98> The CustomHMenuField.ss seems to be the one getting invoked on that page
861: [17:29:48] <PenguinMan98> I'm not sure how to use the _holder
862: [17:33:00] <marvanni> The location of the FormField templates can be a bit tricky. Sometimes you can put them in a folder forms, otherwise the need to be in Includes. depending on if you put them in themes or a module/templates folder..
863: [17:33:18] <marvanni> its always a trial and error with me
864: [17:41:00] * _SjG_home has joined #silverstripe
865: [17:41:30] <PenguinMan98> I don't think it really matters
866: [17:41:43] <PenguinMan98> The folders are just there for organization
867: [17:41:53] <PenguinMan98> Manifest will find them
868: [17:43:08] <marvanni> but not when you need to overload a framework _holder template… But I never really took the time to find out the order of precedence
869: [17:46:07] * Guest39789 quit (Ping timeout: 246 seconds)
870: [17:48:00] * ss-helper quit (Remote host closed the connection)
871: [17:48:15] * ss-helper has joined #silverstripe
872: [17:49:51] <PenguinMan98> http://screencast.com/t/36ZmyLAPbmTj
873: [17:50:09] <PenguinMan98> So far so good .. though including bootstrap screwed up the UI ia bit
874: [17:50:40] <PenguinMan98> I was only using it to do the indenting since bootstrap makes that super easy
875: [17:50:52] <PenguinMan98> I'll pull that back out
876: [17:51:25] <PenguinMan98> Important question now is, Where do I write the logic to save this all to the db?
877: [17:51:45] <PenguinMan98> In the OnBeforeWrite?
878: [17:53:19] <marvanni> if you are using ModelAdmin with the GridField, you should have a save button\?
879: [17:53:42] <marvanni> Im not sure what you are trying to accomplish, but dit you tried this one ?
880: [17:53:42] <marvanni> https://github.com/heyday/silverstripe-menumanager
881: [17:53:47] <PenguinMan98> It has a save button
882: [17:54:00] <marvanni> that will hit $do->write();
883: [17:54:17] <PenguinMan98> $do->write()?
884: [17:54:18] <marvanni> you can indeed intervene in the DO onBeforeWrite();
885: [17:54:28] <marvanni> $dataObject->write();
886: [17:54:43] <marvanni> see GridFieldDetailForm
887: [17:54:51] <PenguinMan98> So, in the data object I define a public function write()?
888: [17:55:04] <marvanni> no, its already in DataObject
889: [17:55:17] <PenguinMan98> yeah, but I need to add my custom functionality
890: [17:55:19] <marvanni> just hit save and the data gets written.
891: [17:55:46] <PenguinMan98> So I add my code in the CustomHMenu class public function write() and in there call the parent::write()
892: [17:56:14] <marvanni> hm, nah… use onBeforeWrite of onAfterWrite
893: [17:56:40] <PenguinMan98> hmmm. If you say so
894: [17:56:53] <marvanni> I (mis)use a MenuHolder extends Page to add extra menu’s to the website… works great, and you keep everything in the SiteTree admin
895: [17:57:32] <PenguinMan98> Do tell
896: [17:57:41] <PenguinMan98> How is this done?
897: [17:57:50] <marvanni> hold on
898: [17:59:44] * muskie9 has joined #silverstripe
899: [18:00:10] <PenguinMan98> Cuz something like that just might save me a lot of time and custom work
900: [18:00:24] <marvanni> http://sspaste.com/paste/show/55884d31a48ca
901: [18:00:49] <marvanni> there is one disadvantage… you have an extra slugpart
902: [18:00:57] <muskie9> when a user uses Delete Draft in the cms, when a page is Published, does that just call ->delete() ?
903: [18:01:27] <marvanni> you can circumvent that with allowing only redirector page types in the MenuHolder, that will link to anotherpage
904: [18:02:12] <PenguinMan98> I have no idea what that means. extra slugpart? Redirector page times?
905: [18:02:18] <marvanni> no, on top of my head it call, Versioned->deleteFromStage(‘slive/stage’) or somtehing
906: [18:02:25] <PenguinMan98> types*
907: [18:02:49] <marvanni> if you see my code example. it will add domain.com/footer1/page-url
908: [18:03:22] <marvanni> thats ugly, to I try to give the positions meaningfull names, like service, extra, etc…
909: [18:03:47] <PenguinMan98> I'm a little lost
910: [18:03:48] <marvanni> but if you only put a Redirector Page type under a MenuHolder, you don’t have that problem
911: [18:03:58] <PenguinMan98> I'm a lot lost
912: [18:04:03] <marvanni> hm… i don’t know how to explain it better...
913: [18:04:35] <PenguinMan98> I'm likely lacking some foundational understanding
914: [18:05:01] <marvanni> With Silverstripe you really need to get the concept of PageTypes
915: [18:05:13] * lerni_ has joined #silverstripe
916: [18:05:17] <PenguinMan98> I've created a few custom page types
917: [18:05:55] <marvanni> MenuHolder is just a PageType
918: [18:05:56] <PenguinMan98> I'm still a little disappointed at the lackluster controls for how and when they are selectable in the UI
919: [18:06:10] <marvanni> lackluster?
920: [18:06:52] <PenguinMan98> yeah. The only controls given are insufficient
921: [18:07:18] <marvanni> and wich controls you are refering to?
922: [18:08:01] <PenguinMan98> allowedChildred->
923: [18:08:04] <PenguinMan98> allowedChildren->
924: [18:08:26] <PenguinMan98> There should be a disallowedChildren->
925: [18:09:35] <marvanni> hm, yes I know what you mean.. you can work arround that though….
926: [18:09:50] <marvanni> but it depends where you need it...
927: [18:39:53] <PenguinMan98> back
928: [18:39:55] <PenguinMan98> sorry
929: [18:39:58] <PenguinMan98> surprise lunch break
930: [18:40:28] <PenguinMan98> So the menu holder is just a custom page type
931: [18:49:33] <PenguinMan98> bah
932: [18:49:34] <PenguinMan98> http://screencast.com/t/Kbk8aNwlueo
933: [18:49:43] <PenguinMan98> I removed bootstrap but the thing is still all wonky
934: [18:54:19] * muskie9 quit (Read error: Connection reset by peer)
935: [18:57:03] * lerni_ quit (Remote host closed the connection)
936: [19:04:57] * Stomach has joined #silverstripe
937: [19:06:32] * sminnee has joined #silverstripe
938: [19:06:46] * lerni_ has joined #silverstripe
939: [19:07:44] * hp101 has joined #silverstripe
940: [19:14:40] <PenguinMan98> I'm getting a lot of errors in my javascript console
941: [19:16:13] <PenguinMan98> Entwine is not defined
942: [19:16:31] * lerni_ quit (Remote host closed the connection)
943: [19:17:49] * benjhocking1 quit (Read error: Connection reset by peer)
944: [19:17:50] * UndefinedOffset quit (Quit: Leaving.)
945: [19:20:22] * benjhocking has joined #silverstripe
946: [19:22:23] <zauberfi1ch> PenguinMan98: sounds like you are including a field like gridfield or uploadfield
947: [19:22:31] <zauberfi1ch> but have not included its dependencies
948: [19:22:42] * benjhocking quit (Read error: Connection reset by peer)
949: [19:22:56] <zauberfi1ch> (some fields do not load all dependencies because
950: [19:23:03] <zauberfi1ch> of required fields or something=)
951: [19:23:23] <zauberfi1ch> just include jquery and jquery entwine from the framework dir
952: [19:23:53] * Stomach quit (Quit: zzz)
953: [19:24:03] * CodeTrap quit (Ping timeout: 264 seconds)
954: [19:27:30] <PenguinMan98> ok
955: [19:28:55] <PenguinMan98> Though, I'm not using either of those.
956: [19:29:56] <PenguinMan98> And I don't see entwine in here
957: [19:38:32] * lerni_ has joined #silverstripe
958: [19:39:46] <PenguinMan98> holy crap
959: [19:40:35] <PenguinMan98> something is not right
960: [19:40:52] <PenguinMan98> to build the page it is now making somewhere on the order of 30-40 http requests
961: [19:40:59] <PenguinMan98> many duplicates
962: [19:47:02] * UndefinedOffset has joined #silverstripe
963: [19:52:21] <PenguinMan98> and now I can't even load the page
964: [19:55:56] * UndefinedOffset1 has joined #silverstripe
965: [19:55:57] * UndefinedOffset quit (Disconnected by services)
966: [20:03:53] * Stomach has joined #silverstripe
967: [20:04:30] * marvanni quit (Quit: marvanni)
968: [20:13:11] * darjus01 has joined #silverstripe
969: [20:13:59] <darjus01> Hi, is any module for gridfield inline editing
970: [20:14:02] <darjus01> ?
971: [20:18:26] <Stomach> yes
972: [20:18:36] <Stomach> https://github.com/silverstripe-australia/silverstripe-gridfieldextensions
973: [20:18:46] <Stomach> whoops wrong one
974: [20:19:00] <Stomach> oh no thats right
975: [20:19:02] <Stomach> `GridFieldEditableColumns`
976: [20:28:29] * chillu_23 has joined #silverstripe
977: [20:28:37] <sminnee_> [Ingo Schommer, silverstripeltd] (just testing how this shows up in IRC)
978: [20:28:56] <sminnee_> [Ingo Schommer, silverstripeltd] Heh, posing as Sam :wink:
979: [20:32:24] * DimiStripe quit (Quit: DimiStripe)
980: [20:32:35] <Stomach> so many chat clients going bing bing bing >_<
981: [20:34:42] <_SjG_home> Anyone have a recommended tutorial or example for writing a controller with multi-page forms?
982: [20:35:08] <_SjG_home> Or perhaps multi-stage Ajax forms?
983: [20:38:39] * UndefinedOffset1 quit (Quit: Leaving.)
984: [20:39:01] * sminnee_ quit (K-Lined)
985: [20:39:55] * UncleCheese has joined #silverstripe
986: [20:40:07] * chillu_23 is now known as chillu
987: [20:42:04] * chillu quit (Quit: chillu)
988: [20:42:13] * UncleCheese quit (Client Quit)
989: [20:51:43] * sminnee quit (Quit: sminnee)
990: [20:52:03] * sminnee has joined #silverstripe
991: [20:52:42] * Frans_Amsterdam has joined #silverstripe
992: [20:53:14] <Frans_Amsterdam> Hi All, Anyone familiar with Silverstripe on an IIS server?
993: [20:56:28] * darjus01 quit (Ping timeout: 264 seconds)
994: [20:57:28] <Stomach> yes
995: [20:57:28] <Stomach> :(
996: [20:58:47] * DanaeNZ has joined #silverstripe
997: [20:59:58] * glenn-bautista has joined #silverstripe
998: [21:03:02] <DanaeNZ> Yahoo - tenancy agreement approved! Looks like I’ll be moving to the shore, just a few minutes from work.
999: [21:03:51] <Stomach> DanaeNZ nice
1000: [21:03:58] <Stomach> enjoy the master race
1001: [21:04:35] <DanaeNZ> Shore-ians?
1002: [21:04:43] * simon_w has joined #silverstripe
1003: [21:04:55] * guci0 quit (Ping timeout: 246 seconds)
1004: [21:05:06] <PenguinMan98> Ugh
1005: [21:05:22] <PenguinMan98> I swear I had this code in front of me hours ago but I can't find it now
1006: [21:05:26] <simon_w> Hmm, looks like logbot needs a poke
1007: [21:05:37] <PenguinMan98> Does anyone know a link to the docs on how to print out a site tree?
1008: [21:05:45] * ss-log has joined #silverstripe
1009: [21:07:06] <Stomach> poked
1010: [21:07:08] <Stomach> nice work
1011: [21:09:03] * travis-ci has joined #silverstripe
1012: [21:09:04] <travis-ci> JorisDebonnet/silverstripe-framework#1 (issue-4295 - eae9ec2 : JorisDebonnet): The build has errored.
1013: [21:09:04] <travis-ci> Change view : https://github.com/JorisDebonnet/silverstripe-framework/compare/760c41cd7b9d...eae9ec20e591
1014: [21:09:04] <travis-ci> Build details : https://travis-ci.org/JorisDebonnet/silverstripe-framework/builds/67905975
1015: [21:09:04] * travis-ci has left #silverstripe
1016: [21:12:37] * micmania1 has joined #silverstripe
1017: [21:12:47] * micmania1 quit (Client Quit)
1018: [21:13:39] * Frans_Amsterdam quit (Ping timeout: 276 seconds)
1019: [21:13:52] * micmania1 has joined #silverstripe
1020: [21:18:06] <ss-helper> SilverStripe: How do I insert a tab before another tab? - http://stackoverflow.com/questions/5033028/silverstripe-how-do-i-insert-a-tab-before-another-tab
1021: [21:18:14] * Hailwood has joined #silverstripe
1022: [21:20:15] * adrexia quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
1023: [21:21:36] * Ryan-Toast has joined #silverstripe
1024: [21:25:01] * muskie9 has joined #silverstripe
1025: [21:30:22] <PenguinMan98> Anybody know how to print a site tree?
1026: [21:30:30] <PenguinMan98> Not using built in widgets
1027: [21:32:45] * stecman has joined #silverstripe
1028: [21:33:06] <ss-helper> SilverStripe 3 Left Join Missing argument - http://stackoverflow.com/questions/30990054/silverstripe-3-left-join-missing-argument
1029: [21:33:28] <ss-helper> Re: SilverStripe docs website errors. - https://groups.google.com/d/msg/silverstripe-dev/8UKVtaQy3e4/lyyluQAMSjsJ
1030: [21:33:28] <ss-helper> Re: [silverstripe-dev] SilverStripe docs website errors. - https://groups.google.com/d/msg/silverstripe-dev/8UKVtaQy3e4/bQxlaXEqXkUJ
1031: [21:39:45] * hp101 quit (Read error: Connection reset by peer)
1032: [21:40:01] * hp101 has joined #silverstripe
1033: [21:40:56] * sminnee_ has joined #silverstripe
1034: [21:44:51] * Ryan-Toast quit (Quit: Ryan-Toast)
1035: [21:46:20] * adrexia has joined #silverstripe
1036: [21:48:18] * ss-helper quit (Remote host closed the connection)
1037: [21:48:31] * ss-helper has joined #silverstripe
1038: [21:49:46] * adrexia_ has joined #silverstripe
1039: [21:50:43] * MichalKleiner quit (Read error: Connection reset by peer)
1040: [21:51:17] * MichalKleiner has joined #silverstripe
1041: [21:51:45] * adrexia quit (Ping timeout: 272 seconds)
1042: [21:52:09] * BackEndCoder quit (Ping timeout: 252 seconds)
1043: [21:53:37] * Dontlookunderthe has joined #silverstripe
1044: [21:55:40] * joelpittet has joined #silverstripe
1045: [21:57:46] * Ryan-Toast has joined #silverstripe
1046: [21:58:13] * BackEndCoder has joined #silverstripe
1047: [22:26:16] * mahfuz has joined #silverstripe
1048: [22:29:17] * camfindlay has joined #silverstripe
1049: [22:32:36] * muskie9 quit (Quit: Textual IRC Client: www.textualapp.com)
1050: [22:34:29] * veb has joined #silverstripe
1051: [22:41:19] <PenguinMan98> ok guys
1052: [22:41:33] <PenguinMan98> I want to execute some code and generate a variable that will be displayed in my template
1053: [22:41:43] <PenguinMan98> Where in the class do I put it?
1054: [22:42:05] * lerni_ quit (Remote host closed the connection)
1055: [22:42:10] <PenguinMan98> Do I make the variable a static member of the class?
1056: [22:42:23] <PenguinMan98> or a non-static member?
1057: [22:44:29] <Ryan-Toast> PenguinMan98: If it’s for every page, just make a: public static function getFoo() {return “foo”;} then call $Foo in your template.
1058: [22:44:38] <Ryan-Toast> in your Page class.
1059: [22:44:53] <PenguinMan98> This is a data Object...
1060: [22:45:06] <Ryan-Toast> Same thing
1061: [22:47:15] <Stomach> if its static you can use a GlobalTemplateProvider thing
1062: [22:48:08] <PenguinMan98> So <% loop myMethodName %> some html <% end_loop %>
1063: [22:48:10] <PenguinMan98> ?
1064: [22:49:32] <PenguinMan98> because that doesn't seem to work
1065: [22:50:12] <Ryan-Toast> PenguinMan98 !help
1066: [22:50:20] <Ryan-Toast> PenguinMan98 !paste
1067: [22:50:25] <Ryan-Toast> ...
1068: [22:50:30] <Ryan-Toast> ss-helper, what’re you doing?
1069: [22:50:38] <Ryan-Toast> Paste your code, man.
1070: [22:51:05] <PenguinMan98> http://screencast.com/t/a0cQ4pgR4WMP
1071: [22:51:26] <Ryan-Toast> http://pastie.org/
1072: [22:51:48] <PenguinMan98> http://pastebin.com/YUq0NThf
1073: [22:52:18] <PenguinMan98> http://pastebin.com/EMdzCewy
1074: [22:52:57] <Ryan-Toast> You need to loop an arraylist
1075: [22:53:08] <Ryan-Toast> not an array
1076: [22:53:24] <PenguinMan98> how to correct this?
1077: [22:53:38] <PenguinMan98> $pages = new ArrayList();?
1078: [22:53:47] <Ryan-Toast> PenguinMan98: https://github.com/Rhym/ss_snippets#array-list-loop
1079: [22:53:54] * camfindlay quit (Quit: camfindlay)
1080: [22:56:09] <Ryan-Toast> Is there a reason why you’re using a custom menu, orver the Menu() method?
1081: [22:56:13] * camfindlay has joined #silverstripe
1082: [22:56:47] <PenguinMan98> yes
1083: [22:56:55] * Stomach quit (Quit: zzz)
1084: [22:57:04] <PenguinMan98> The method isn't even getting called
1085: [22:57:13] <Ryan-Toast> What method?
1086: [22:57:14] <PenguinMan98> getPages()
1087: [22:57:54] <Ryan-Toast> Are you in the scope of the dataobject?
1088: [22:58:18] <PenguinMan98> I put a debug statement in the method and then loaded the page in the CMS
1089: [22:58:24] <PenguinMan98> The debug statement is not present
1090: [22:58:28] * nontgor quit (Ping timeout: 246 seconds)
1091: [22:58:34] <PenguinMan98> ergo, the method did not get invoked.
1092: [22:59:00] <Ryan-Toast> Looks like you aren’t in the context of the dataobject.
1093: [22:59:01] * Stomach has joined #silverstripe
1094: [23:00:22] <PenguinMan98> So, making a static method on the data object and invoking it from the template doesn't work?
1095: [23:01:13] <Ryan-Toast> I’m assuming you’re on a generic page, so the only methoids that can be called from that would be froi the POage, and page controller.
1096: [23:01:28] <Ryan-Toast> If you want to access a dataobject in a page it will need some kind of relationship.
1097: [23:01:55] <PenguinMan98> the template is CustomHMenuField.ss
1098: [23:02:19] <Ryan-Toast> Which will default to the page class.
1099: [23:02:40] <Ryan-Toast> Dataobjects aren’t pages./
1100: [23:03:17] <PenguinMan98> OK. So how can I get this over there? Do I have to make a new page type?
1101: [23:03:34] <Ryan-Toast> No, just add the methods to your Page class.
1102: [23:03:42] <PenguinMan98> uhhh
1103: [23:03:57] <PenguinMan98> I suppose...
1104: [23:03:58] <Ryan-Toast> Or has_one CustomHMenu
1105: [23:04:01] <Ryan-Toast> on the page
1106: [23:04:10] <Ryan-Toast> has_many, whatever you want to do.
1107: [23:04:12] * PenguinMan98 stares blankly
1108: [23:04:21] <Stomach> PenguinMan98 - add one of these
1109: [23:04:21] <Stomach> https://github.com/heyday/silverstripe-menumanager/blob/master/code/MenuManagerTemplateProvider.php
1110: [23:05:55] * PenguinMan98 whines. I thnk I can extend the Page object.. the rest I'm just not sure about
1111: [23:06:36] <Ryan-Toast> What’s your use-case for this?/
1112: [23:06:45] <Ryan-Toast> What’re you trying to achieve?
1113: [23:07:17] <PenguinMan98> I'm creating a module that will allow me to drag and drop pages from a 'pool' onto a 'Hierarchy' and then save that hierarchy of pages into the database.
1114: [23:07:37] <PenguinMan98> Then I can call those custom menus from elsewhere on the front side
1115: [23:07:43] <Ryan-Toast> Like how Wordderp handles their menus?
1116: [23:07:46] * sminnee quit (Quit: sminnee)
1117: [23:07:50] <PenguinMan98> precisely
1118: [23:08:06] <PenguinMan98> Our clients are migrating from wordpress and they demand we give them this feature.
1119: [23:08:32] * sminnee has joined #silverstripe
1120: [23:08:34] * sminnee quit (Client Quit)
1121: [23:08:44] <Ryan-Toast> PenguinMan98: take a look how this works: https://github.com/heyday/silverstripe-menumanager
1122: [23:08:52] <PenguinMan98> Heyday can only make a flat menyu
1123: [23:09:03] <Ryan-Toast> Yeah, but you can extend that, right?
1124: [23:09:21] <PenguinMan98> I've already borrowed much of their solution
1125: [23:09:27] <PenguinMan98> I have it open in front of me
1126: [23:09:53] <PenguinMan98> But I'm not experienced enough to make all the pieces fit together
1127: [23:09:55] <PenguinMan98> yet
1128: [23:10:07] <PenguinMan98> I've learned a lot though
1129: [23:10:23] <PenguinMan98> I have the i-something one open too
1130: [23:11:04] * nontgor has joined #silverstripe
1131: [23:11:21] <PenguinMan98> both have features we like and features we don't
1132: [23:11:26] <PenguinMan98> but neither is adequate
1133: [23:11:27] * Stomach quit (Quit: zzz)
1134: [23:18:01] * Stomach has joined #silverstripe
1135: [23:23:11] * spronk has joined #silverstripe
1136: [23:25:51] <PenguinMan98> Going back to this: https://github.com/heyday/silverstripe-menumanager/blob/master/code/MenuManagerTemplateProvider.php
1137: [23:26:01] <PenguinMan98> I think I get how it works
1138: [23:26:20] <PenguinMan98> I made this:
1139: [23:26:48] <PenguinMan98> http://pastebin.com/YtueRQe2
1140: [23:27:21] <PenguinMan98> This is the piece that will let me call out and use the menu from wherever in the program I am
1141: [23:27:39] <PenguinMan98> right?
1142: [23:28:05] <PenguinMan98> Can I make as many methods here as I want?
1143: [23:28:16] <PenguinMan98> Do I have to add them all to that get_template_global_variables() array?
1144: [23:30:18] <PenguinMan98> I must depart.
1145: [23:30:30] <PenguinMan98> Have a pleasant evening and thank you all again for your patience and answers.
1146: [23:31:10] * PenguinMan98 is now known as pengy-gone_home
1147: [23:34:04] * glenn-bautista quit (Quit: Leaving.)
1148: [23:35:50] * Colin[pi] has joined #silverstripe
1149: [23:36:37] * Colin[pi]_2 has joined #silverstripe
1150: [23:40:26] * Colin[pi] quit (Ping timeout: 272 seconds)
1151: [23:41:32] * Colin[pi]_2 is now known as Colin[pi]
1152: [23:42:14] * glenn-bautista has joined #silverstripe
1153: [23:45:17] * catcher quit (Quit: Leaving)
1154: [23:46:05] * terryapodaca1 has joined #silverstripe
1155: [23:47:48] * terryapodaca quit (Ping timeout: 256 seconds)
1156: [23:53:29] * terryapodaca1 has left #silverstripe

These logs were automatically created by ss-log on irc.freenode.net.