Trying to solve using DSolve, partial differential equations.

Hi, here is my problem : I am trying to solve a partial differential equation, which I turned in an ordinary differential equation using this reduction

X:=kx+wt+c

And now my equation is simply, after a first integration :

eqn:=(k^3)u''[X]+wu[X]-2k(u[X]^3)==0

And my problem appears when I use DSolve on this equation, because I want my independent variable to be the funtion itself, then solve for its first derivative.

DSolve[eqn, u'[u[X]], u[X]]

I tried using this instead but it did not work either because I could not find a command that did what I want (but I am just showing you so you can figure out what I want to do) :

Assuming[u[X] -> variable, {DSolve[eqn, u'[u[X]], u[X]]}]

Can you help me with this ?
Thank you

Trying to solve using DSolve, partial differential equations.